我在重定義_renderItems
時遇到問題。問題是,它的設置項爲空,換言之,我得到一個錯誤jQuery autocomplete _renderItem將項目設置爲空
無法讀取空的特性「casValue」
代碼:
$(function() {
$('.CasNumber').autocomplete({
source: function(request, response) {
$.ajax({
url: //url of the page
dataType: "json",
data: {
search_word: request.term,
},
success: function(data) {
response($.map(data.result, function(item) {
return {
label: item.Cas,
value: item.Cas,
casLabel: 'Cas No.',
casValue: item.Cas,
egLabel: 'Eg No.',
egValue: item.Eg,
REACHLabel: 'REACH No.',
REACHValue: item.ReachRegNumber,
indexLabel: 'Index-number',
indexValue: item.IndexNumber,
nameValue: item.Name,
data: item
}
}));
}
});
},
minLength: 1,
focus: function(event, ui) {
$(".CasNumber").val(ui.item.casValue);
return false;
},
select: function(event, ui) {
log(ui.item.data, this);
return false;
},
open: function() {
$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
},
close: function() {
$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
}
})
.data("ui-autocomplete")._renderItem = function(ul, item) {
return $("<li>")
.data("item.ui-autocomplete", item)
.append("//Format of the drop down list is here")
.appendTo(ul);
};
});
當我通過調試器的代碼在_renderItem
中正確獲取項目值,它完美地繪製出列表,但一旦開始聚焦(在項目選擇後)ui.item parameter
被設置爲空。
可以添加一個代碼示例,以顯示其中/你如何添加錨? – emeraldjava 2014-01-10 18:24:55