我想在自动完成时获取名称和ID列表。我在文本框中有按键事件,并调用了ajax post的funstion,我可以获得列表供选择。我想获得Id和Name。如果我在文本框中有绑定的名称,那么我应该在哪里保留ID,以便用户无法看到它,但是当我必须保存数据时我可以使用它。我可以使用隐藏字段,但如果自动完成的选择事件不起作用,如何将该Id分配给隐藏字段ID。此外,我需要在从列表中选择另一个元素时更改隐藏字段值。 请帮我解决这个问题。谢谢。
function SearchClients() {
}
$(document).ready(function () {
$("#txt_Autocomplete").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "../PsychiatricEvaluation/SearchClients",
data: "{'searchtext':'" + document.getElementById('txt_Autocomplete').value + "'}",
dataType: "json",
success: function (data) {
response($.map(data.Data, function (item) {
return {
label: item.Name,
value: item.id
}
}));
},
select: function (event, ui) {
alert("hi");
//$("#txt_Autocomplete").val(ui.item.value);
$("#hdnPkClientId").val(ui.item.id);
},
change: function (e, ui) {
alert("changed!");
},
error: function (result) {
alert('Error');
}
});
}
});
});
答案 0 :(得分:1)
将jQuery连接放在$(document).ready
事件中:
$(document).ready(function () {
$("#txt_Autocomplete").autocomplete({ ...
});