我遇到麻烦因为我从db(mysql)中获取了一些文本,该文本应该填充自动完成但是从db中检索它,现在当我想使用自动完成的文本时不起作用,我需要在不使用自动完成的情况下获取文本的id(ui.item.id),我认为这是一个触发自动完成(.bind)的事件的问题,但我不知道如何修复,任何建议请帮助?我被困了
这是我的代码:
var ids = [];
$(function() {
function split(val) {
return val.split(/,\s*/);
}
function extractLast(term) {
return split(term).pop();
}
$("#txtdestino_Email").bind("keydown", function(event) {
if (event.keyCode === $.ui.keyCode.TAB && $(this).data("autocomplete").menu.active) {
event.preventDefault();
}
}).autocomplete({
source: function(request, response) {
$.getJSON("../../correo/controller/controllerAutocomplete.php", {
term: extractLast(request.term)
}, response);
},
focus: function() {
return false;
},
select: function(event, ui) {
var terms = split(this.value);
terms.pop();
// add the selected item
terms.push(ui.item.value);
// add placeholder to get the comma-and-space at the end
terms.push("");
this.value = terms.join(",");
ids.push(ui.item.id);
return false;
}
});
});
答案 0 :(得分:5)
'selectedItemProp'和'selectedValuesProp',其中selectedValuesProp用于选择值,例如对于名称值集合,此选项用于值,而其他selectedItemProp用于名称。 'asHtmlID'选项有助于设置元素的HTML ID。最后,插件呈现ID为as_values_'CUSTOM_ID'的隐藏字段,其中包含选中的值,其中'CUSTOM_ID'是设置为'asHtmlID'选项的ID