我已经浏览过很多关于此事的帖子,但我认为我的内容比我发现的要简单得多。我的字段正在成功请求数据,但未显示它。我认为这与CSS有关,以显示它。我正在使用jQuery UI CSS来显示它,就像我在其他网站上所做的那样:
<link href="/css/console/jquery-ui-1.8.18.custom.css" rel="stylesheet" type="text/css" />
这是我试图展示它的地方。我在这做错了什么?我已经在其他网站上工作了。
<input type="text" name="userSearch" id="userSearch"/>
<input class="button" style="top: -1px; margin-left: 5px;" type="button" value="SEARCH" />
<input type="hidden" id="hiddenUserWom" value="" /></span></div>
<script type="text/javascript" src="/js/jquery-ui-1.8.18.custom.min.js"></script>
<script type="text/javascript">
$('#userSearch').autocomplete({
source: '/console/ajax/user_search_autocomplete.php',
minLength: 3,
select: function (event, ui) {
$("#userSearch").val(ui.item.label);
$("#hiddenUserWom").val(ui.item.id);
}
});
$(document).ready( function () {
$("#userSearch").focus();
});
</script>
以下是成功返回的数据: 这是回报的一个例子:
[{“label”:“5U5NU - Devin Parker - Vacaville,CA”,“id”:“5U5NU”}]
从官方网站获取的jQuery UI数据格式说明:
预期数据格式
来自本地数据,网址或回调的数据可以分为两部分 变体:
一个字符串数组:[“Choice1”,“Choice2”]一个对象数组 标签和值属性:[{label:“Choice1”,value:“value1”}, ......]
这应该可以正常工作。
以下是网站:http://wombusiness.com/console/members/
这是需要自动完成的强力搜索字段。
答案 0 :(得分:2)
将您的自动填充功能放入$(文档).ready
中<input type="text" name="userSearch" id="userSearch"/>
<input class="button" style="top: -1px; margin-left: 5px;" type="button" value="SEARCH" />
<input type="hidden" id="hiddenUserWom" value="" /></span></div>
<script type="text/javascript" src="/js/jquery-ui-1.8.18.custom.min.js"></script>
<script type="text/javascript">
$(document).ready( function () {
$('#userSearch').autocomplete({
source: '/console/ajax/user_search_autocomplete.php',
minLength: 3,
select: function (event, ui) {
$("#userSearch").val(ui.item.label);
$("#hiddenUserWom").val(ui.item.id);
}
});
$("#userSearch").focus();
});
</script>
问题#2 $(“#userSearch”)。val(ui.item.label); 您正在使用自己的数据覆盖自动填充。
答案 1 :(得分:0)
问题在于从PHP返回。如果您尝试完全相同但在数组中使用固定集作为源,则自动完成功能非常完美。
JSON编码似乎很好。
我知道您不需要或使用它,但请尝试在每个项目中添加value
。我不确定,但value
可能是必填字段,而且测试它会比对我来说更容易。