Jquery UI自动完成显示所有数据
Jquery UI autocomplete show all data
我使用JQuery的自动完成小部件使用JSON来解析,但不工作,显示所有JSON数据。
请帮帮我
这是我的脚本:
$(function() {
$( "#test2" ).autocomplete({
source: function( request, response ) {
$.ajax({
url: "http://some_link/folder/file.json",
dataType: "json",
data: {terms: request.term},
success: function( data ) {
response( $.map( data, function( item ) {
return {
label: item.city+' ('+item.country_name+'), '+item.currency,
value: item.city
}
}));
}
});
},
minLength: 2,
});
});
这是json
[{"country_name":"DENMARK","city":"Aalborg","currency":"EUR"},{"country_name":"DENMARK","city":"Aarhus","currency":"EUR"}]
这是html
<div class="form-box">
<center><label style="color:white;">City <small>*</small></label></center>
<input type="text" class="text" id="test2" placeholder="Your City">
</div><!-- End Box -->
请帮忙!
TNX
看起来您没有对请求的json文件应用过滤器。你会得到整个档案的。我目前假设你提到的json文件是一个普通的json文件(意思是,它没有创建它的服务器端代码)。
您可以做两件事:a)修改$.map
内部的返回函数,以便您可以删除所有不满足您的过滤器的值(即,您可以删除不包含给定文本部分的城市)。为了找到符合您标准的值,您可以使用如下简单的东西:
或者b)您可以使用一些服务器语言(如PHP, Java, c#等)创建JSOn服务器端,在那里,您可以在$.ajax
那里读取您传递给data
的terms
参数并通过服务器端执行过滤。然后,您只需要返回实际符合条件的值。
相关文章:
- 如何通过所选索引(AngularJS)在模态弹出窗口中显示数据
- Angular渲染元素,但不渲染;t显示数据
- 如何在分页事件中突出显示数据表中的单词
- Angular JS和Node路由/布线-仅在页面刷新后显示数据
- MVC中关于表的自定义工具提示-每行显示数据
- Highcharts:根据表单输入动态显示数据
- 重置transform:rotate(),方法是移除并追加在追加和重绘图表后未显示数据的画布
- jqGrid无法显示数据
- 显示数据的最快方式
- 如何从jquery日期和时间选择器中选择和显示数据
- 我的复选框没有't使用的循环来显示数据
- 如何在状态输入ui路由器时立即显示模板,然后当承诺被解决时显示数据
- 车把模板不显示数据
- 如何完成表单后使用 AJAX 重定向并在其他页面上显示数据
- Html5 Web 存储未在第二页中显示数据
- ASP.Net VB - 显示数据折叠样式
- 正确禁止显示数据表中的警告
- 在使用 JS 进行选择时在文本框中显示数据
- 如何使用 C# 和 Angular js 在视图上显示数据
- 在轨道上的 Ruby 文本字段中动态显示数据