我有一个表单输入,它使用jquery自动完成功能#1:
$( function() {
var availableTags = JSON.parse($('#possible_options').val());
$( "#id_form1" ).autocomplete({
source: availableTags
});
} );
几乎完全正常工作:一旦开始写作,下拉列表会显示预期的可能值。选择其中一个下拉列值后,所选值将显示在表单输入框中并触发事件:
$('.form-control').on('change autocompleteselect',function () {
var query1;
query1 = $('#id_form1').val();
$.get('/suggest/', {selection1: query1}, function (data) {
$('#resultstable').html(data);
});
});
此函数#2获取表单中的值(一旦完成自动完成或表单中的值已更改)并更新结果表。 问题出现了:当您开始在表单输入中键入几个字母,然后从下拉列表中选择一个值(选择值时触发函数#2),函数#2而不是获取所选值,只获取到目前为止输入的字母串,因此在更新表时会出现问题。
我一直在尝试不同的解决方法而没有运气。 非常感谢你, 卡洛斯
答案 0 :(得分:0)
如果您想获得所选值,则可以根据以下代码使用autocompletechange
或autocompleteselect
或两者。
autocompletechange
事件。
autocompleteselect
事件。
$('#id_form1').on('autocompletechange autocompleteselect', function (e, ui) {
console.log('You selected: ' + ui.item.value);
});
希望这有帮助。