Jquery新手在这里。 我的jquery追加似乎不起作用。 非常感谢任何帮助。
我使用的是jquery版本1.8.3和UI 1.9.2。
以下是我的代码。
$('.tinputer').autocomplete({
source: "http://localhost/myapp/items/search_item",
minLength: 1,
select: function(event, ui) {
var $itemrow = $(this).closest('tr');
$itemrow.find('#item_description').val(ui.item.description);
$itemrow.find('#unit_price').val(ui.item.price);
$itemrow.find('#qty').focus();
verify_item(ui.item.value);
}
}).data("autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.value + item.description + "</a>" )
.appendTo( ul );
};
小提琴 - http://jsfiddle.net/Yw2Y7/1/ 尝试在第二行的项目框中输入。第一行有效。
结果填充,我得到下拉,但只显示值。未附加item.description或似乎完全忽略了追加部分。
非常感谢您的帮助。
答案 0 :(得分:2)
$('.tinputer').autocomplete({
source: projects,
minLength: 1,
select: function (event, ui) {
var $itemrow = $(this).closest('tr');
$itemrow.find('#item_description').val(ui.item.description);
$itemrow.find('#unit_price').val(ui.item.price);
$itemrow.find('#qty').focus();
verify_item(ui.item.value);
}
}).
each(function(){ //This is the line added.
$(this).data("autocomplete")._renderItem = function (ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.value + " - " + item.description + "</a>")
.appendTo(ul);
} }
);