Javascript 如何显示名称&;在JQuery UI自动完成中获取id?
[对不起,我英语不好] 我想知道,如何使用JQuery UI Autocomplete从对象数组中获取id。Javascript 如何显示名称&;在JQuery UI自动完成中获取id?,javascript,jquery,jquery-ui,autocomplete,Javascript,Jquery,Jquery Ui,Autocomplete,[对不起,我英语不好] 我想知道,如何使用JQuery UI Autocomplete从对象数组中获取id。 它显示名称。但是,我想在单击submit按钮时获取id 这就是我到目前为止一直在尝试的 var城市=[ { id:1, 姓名:“纽约” }, { id:2, 姓名:“伦敦” }, { id:3, 名称:“雅加达” }, { id:4, 姓名:“西德尼” }, { id:5, 名称:“新德里” }, { id:6, 名称:“东京” }, { id:7, 姓名:“马德里” } ]; var
它显示名称。但是,我想在单击submit按钮时获取id 这就是我到目前为止一直在尝试的
var城市=[
{
id:1,
姓名:“纽约”
},
{
id:2,
姓名:“伦敦”
},
{
id:3,
名称:“雅加达”
},
{
id:4,
姓名:“西德尼”
},
{
id:5,
名称:“新德里”
},
{
id:6,
名称:“东京”
},
{
id:7,
姓名:“马德里”
}
];
var city_name=[];
对于(变量i=0;i
自动完成演示
结果是
选择您的城市地址:
试试这个:
Jquery:
$(document).ready(function(){
var projects = [
{
value: "1",
label: "jQuery"
},
{
value: "2",
label: "jQuery UI"
},
{
value: "3",
label: "Sizzle JS"
}
];
$( "#project" ).autocomplete({
minLength: 0,
source: projects,
focus: function( event, ui ) {
$( "#project" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#project" ).val( ui.item.label );
$( "#project-id" ).val( ui.item.value );
return false;
}
})
.autocomplete( "instance" )._renderItem = function( ul, item ) {
return $( "<li>" )
.append( "<div>" + item.label + "</div>" )
.appendTo( ul );
};
});
$(文档).ready(函数(){
var项目=[
{
值:“1”,
标签:“jQuery”
},
{
值:“2”,
标签:“jQueryUI”
},
{
值:“3”,
标签:“Sizzle JS”
}
];
$(“#项目”).autocomplete({
最小长度:0,
资料来源:项目,
焦点:功能(事件、用户界面){
$(“#项目”).val(ui.item.label);
返回false;
},
选择:功能(事件、用户界面){
$(“#项目”).val(ui.item.label);
$(“#项目id”).val(ui.item.value);
返回false;
}
})
.autocomplete(“实例”)。\u renderItem=函数(ul,项){
返回$(“”)
.append(“+item.label+”)
.附录(ul);
};
});
Html:
选择一个项目(键入“j”作为开始):
这将在hidden
元素中为您提供id
提供一个工作代码小提琴?您可以将上面的代码复制到JSFIDLE,或者运行代码片段,而不是检查我的答案。。我将首先尝试实现你的答案
<div id="project-label">Select a project (type "j" for a start):</div>
<input id="project">
<input type="hidden" id="project-id">