Я только что создал текстовое поле автозаполнения через jquery, теперь я застрял в двух проблемах.
1) Мне нужно получить значение выбранного элемента из списка автозаполнения.
Пока я это сделал.
Мой jquery
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
});
});
Я получаю список автозаполнения из базы данных, который работает нормально, но проблема в том, что
2) Когда я набираю 'r', все имена со значениями заполняются, и если я выберу из списка Robin и попытаюсь отобразить его с предупреждением, я получаю только 'r', (я только набрал r и выбрал 'robin' из списка), почему это так?
вот код, который я написал для этого
для текстового поля автозаполнения
<input name="tags" type="text" id="tag" value="" onchange= "newfn()" />
и в newfn()
<script>
function newfn()
{
authname = document.getElementById("tag").value;
document.autoquote.qid.value=authname;
alert(authname);
}
</script>
и если я сначала поставил предупреждение,
alert("Hi");
тогда, я получаю первое предупреждение, говорящее привет, и я получаю robin not r
Итак, каков правильный способ получить то значение, которое я выбрал из списка автозаполнения?
Теперь мой второй вопрос заключается в том, что выбранное значение из этого текстового поля автозаполнения, мне нужно передать его с другим jquery на другую страницу php, чтобы я мог получить это значение там и предоставить его в запросе в качестве критерия.
$(".autosearch-smart").autocomplete('autocomplete.php', {
select: function( event, ui ) {
// here you can get id and values from the autocomplete list
// try to debug
console.log(ui.item.id);
console.log(ui.item.label);
console.log(ui.item.value);
}
});
вы можете использовать свойство выбора автозаполнения, подобное этому
$("#tag").autocomplete('autocomplete.php', {
selectFirst: true,
select: function (event, ui) {
var label = ui.item.label;
var value = ui.item.value;
alert(label);
alert(value)
// you can write additional javascript code here to make use of these values
}
});
Пожалуйста, проверьте документацию jQuery UI для получения дополнительных примеров и информации.
Вот JSFiddle. (Обратите внимание, что дополнительный атрибут источника добавлен в скрипт для имитации загрузки набора данных, поскольку реальные межсетевые вызовы AJAX запрещены)
Потому что это не способ поймать событие select http://api.jqueryui.com/autocomplete/#event-select:
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true,
select: function( event, ui ) {
//Then use "ui" object, for example ui.item.label or ui.item.value
}
});
});
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
select: function( event, ui ) {
//check the values in console
alert(ui.item.value+" - "+ui.item.value);
}
});
});