我使用jquery ui autocomplete进行生成自动完成。一切正常,出现一个下拉菜单,但值是空白的。但是,当我在这些空白值上滚动鼠标时,输入值会随建议值而变化。 这是发生的事情的屏幕截图:http://hpics.li/b058523
这是我的javascript代码:
<!-- javascript pour AUTOCOMPLETION -->
<script type="text/javascript">
$(function() {
$('#search').autocomplete({
minLength: 2,
source: '<%= posts_path(:json) %>',
focus: function(event, ui) {
$('#search').val(ui.item.post.title);
return false;
},
select: function(event, ui) {
$('#search').val(ui.item.post.title);
$('#post_id').val(ui.item.post.id);
return false;
}
})
_renderItem = function( ul, item ) {
return $( "<li></li>" ).data( "ui-autocomplete", item )
.append( "<a>" + ui.item.post.title + "</a>" )
.appendTo( ul );
};
});
</script>
<!-- fin javascript pour autocompletion -->
似乎.append(“”+ ui.item.post.title +“”)没有添加标题之间的值。 (我用chrome元素检查员检查过,没有写过任何值)。
可能是什么问题?
感谢
答案 0 :(得分:0)
在您的代码中:
_renderItem = function( ul, item ) {
return $( "<li></li>" ).data( "ui-autocomplete", item )
.append( "<a>" + ui.item.post.title + "</a>" )
.appendTo( ul );
};
该功能正在接受ul
,但您正在呼叫ui
。这可能是问题所在。只是预感。