Народ, задачка: нужно помогать пользователю заполнять текстовое поле, показывая возможные варианты и меняя их по мере того, как пользователь печатает. Варианты нужно динамически подгружать с сервера передавая на сервер, что уже напечатал пользователь.
Я нашел в инете пример jquerry, но есть проблемка (код ниже)
[code:2aet289b]
<script>
jQuery(function($) {
$.getJSON(’magn_upd.php’, function(json) {
var select = $(’#city-list’);
$.each(json, function(k, v) {
var option = $('<option />’);
option.attr(’value’, v)
.html(v)
.appendTo(select);
});
});
});
</script>
[/code:2aet289b]
1. Как передавать что-то POST или GET серверу? Я чет туплю… например как передать уже выбранное в select (в данном примере речь о дроп боксе)?
2. Есть ли более простой способ, ибо для этого способа нужно jquery загружать в браузер (около 70кб), а речь идет о мобильном приложении и трафик может стоить денег?
[quote="alxlabs":76mmc8g6]Народ, задачка: нужно помогать пользователю заполнять текстовое поле, показывая возможные варианты и меняя их по мере того, как пользователь печатает. Варианты нужно динамически подгружать с сервера передавая на сервер, что уже напечатал пользователь.
Я нашел в инете пример jquerry, но есть проблемка (код ниже)
[code:76mmc8g6]
<script>
jQuery(function($) {
$.getJSON(’magn_upd.php’, function(json) {
var select = $(’#city-list’);
$.each(json, function(k, v) {
var option = $('<option />’);
option.attr(’value’, v)
.html(v)
.appendTo(select);
});
});
});
</script>
[/code:76mmc8g6]
1. Как передавать что-то POST или GET серверу? Я чет туплю… например как передать уже выбранное в select (в данном примере речь о дроп боксе)?
2. Есть ли более простой способ, ибо для этого способа нужно jquery загружать в браузер (около 70кб), а речь идет о мобильном приложении и трафик может стоить денег?[/quote:76mmc8g6]
RTFM?
http://api.jquery.com/jQuery.post/
[quote="alxlabs":2xyhgixr]
2. Есть ли более простой способ, ибо для этого способа нужно jquery загружать в браузер (около 70кб), а речь идет о мобильном приложении и трафик может стоить денег?[/quote:2xyhgixr]
Да нет, надо все грузить, иначе как оно работать будет?
[quote="loco":3ekvsxg1][quote="alxlabs":3ekvsxg1]
2. Есть ли более простой способ, ибо для этого способа нужно jquery загружать в браузер (около 70кб), а речь идет о мобильном приложении и трафик может стоить денег?[/quote:3ekvsxg1]
Да нет, надо все грузить, иначе как оно работать будет?[/quote:3ekvsxg1]может без jquerry можно… какойнить другой библиотекой или повыкидывать из jquerry лишнего…но там же код блин нечитаемый..
http://ajaxmenu.com/es/ajax-hover-menu.html
search for
«Ajax Hover Popup»
Если не хочешь пользовать баблиотеку, гугли XMLHttpRequest — и делай тогда всё вручную
Пошукай еще jscript autocomplete
Если приложение мобильное, то auto-populating может и не работать, зависит от браузера.
Передать ГЕТом или ПОСТом можно через ajax, например, имеем форму:
[code:2mmt6ko2]<select name="stest" id="stest">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="text" name="keyword" id="keyword" />[/code:2mmt6ko2]
Чтобы передать оба значения ГЕТом скрипту getdata.php, используем ajax request стандартной функцией jQuery:
[code:2mmt6ko2]
$.get("getdata.php", { stest: $("#stest option:selected").val(), keyword: $("#keyword").val() },
function(data){
// делаем что-то
});
[/code:2mmt6ko2]
Типа того.
Наш форум самый лучший, я всегда это знал. Спасибо ВСЕМ огромное… попробую написать ручками по совету Госта, ибо если можно снизить вес страницы, то оно того стоит, ибо мобильный трафик бывает дорог.
Ну ты там сильно не увлекайся оптимизацией, на дворе уже 3G век, с трафиком народ не сильно церемонится, плюс кэширование стаедартной библиотеки которой если не ты, то другие все равно будут пользоваться. Ну и помни, что вручную придется самому кроссбраузерность обеспечивать, хотя там тоже не rocket science…