【发布时间】:2018-05-10 16:31:52
【问题描述】:
对于我的自动完成,我将结果分为 3 个部分“标题”、“公司”、“标签”。
我想为每个部分设置一个标题。
在实践中,我想我想在 li 元素之前添加<div class='ui-optionHeader'>Headline</div>。
我想不通,要么标题在每个元素之上,要么根本不起作用。
这是我的代码:
$(document).ready(function() {
src = "{{ route('searchajax') }}";
$("#search_text").autocomplete({
source: function(request, response) {
$.ajax({
url: src,
dataType: "json",
data: {
term : request.term,
searchOption : $("#search_option").val()
},
success: function(data) {
response(data);
}
});
},
select: function(event, ui) {
$('#search_text').val(ui.item.value);
},
minLength: 1,
open : function(){
// $(".ui-autocomplete:visible").css({top:"+=13"});
}
})
.autocomplete( "instance" )._renderItem = function( ul, item ) {
if(item.option==="title") {
return $( "<li>" )
.append( "<div><i class='fas fa-tags'></i> " + item.label + "<br> title </div>" )
.appendTo( ul );
}
else if(item.option==="company"){
return $( "<li>" )
.append( "<div><i class='fas fa-building'></i> " + item.label + "<br> company </div>" )
.appendTo( ul );
}
else if(item.option==="tags"){
return $( "<li>" )
.append( "<div><i class='fas fa-utensils'></i> " + item.value + "<br> tags </div>" )
.appendTo( ul );
}
};
});
提前致谢。
【问题讨论】:
-
感谢您的提示。但我不知何故不能一起建造它。我的类别值是“item.option”。你能给我一个代码示例吗?
-
需要一个预期数据的样本。
标签: javascript jquery jquery-ui autocomplete