jQuery自动完成不处理不同的数据
我的 Jquery 自动完成有问题。 我的代码工作完美,但是当我更改数据源时,它不起作用。
这是我的代码并且工作完美。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Seach Autocomplete</title>
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script>
</head>
<body>
<label for="field_id">ID</label>
<input id="field_id" type="text" style="width: 200px;">
<label for="field">Search</label>
<input id="field" type="text" style="width: 200px;">
</body>
</html>
<script>
$(function() {
var data = [
{
"id": "17",
"value": "Albania",
"label": "Albania"
},
{
"id": "18",
"value": "Algeria",
"label": "Algeria"
},
{
"id": "20",
"value": "American Samoa",
"label": "American Samoa"
}
];
$("#field").autocomplete({
source: data,
minLength: 1,
select: function(event, ui) {
$("#field_id").val(ui.item.id);
}
});
});
</script>
但是如果我将数据更改为以下内容则不起作用,并且结果不会显示。这是数据,但不起作用:
{
"id": 298,
"city_name": "Jakarta Timur",
"province_name": "DKI Jakarta"
},
{
"id": 299,
"city_name": "Kabupaten Tangerang",
"province_name": "Banten"
},
{
"id": 230,
"city_name": "Jakarta Timur",
"province_name": "DKI Jakarta"
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
基于 documentation 它不起作用,因为应该是具有标签和值属性的一系列对象:<代码:<代码:
[{label:“ choice1”,value:“ value1”},...]
。您可以使用以下代码来解决您的问题:Based on documentation it's not working because should be an array of objects with label and value properties:
[ { label: "Choice1", value: "value1" }, ... ]
. You can use the following code to fix your problem: