Javascript 拆分数组的元素
我有这样一个数组:Javascript 拆分数组的元素,javascript,jquery,jquery-ui,autocomplete,Javascript,Jquery,Jquery Ui,Autocomplete,我有这样一个数组: var arr = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"]; 我想把它分开 1 JOAQUIN 2 BERNARDINO 3 MODOC 4 MADERA 我想做的是: 1。在jQuery UI自动完成列表中显示数字(第一个索引) 2.并在另一个文本框中显示各自的名称 这是我的密码 var arr = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"]
var arr = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"];
我想把它分开
1 JOAQUIN
2 BERNARDINO
3 MODOC
4 MADERA
我想做的是:
1。在jQuery UI自动完成列表中显示数字(第一个索引)2.并在另一个文本框中显示各自的名称 这是我的密码
var arr = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"];
$('input').autocomplete({
source: json,
select: function(event, ui) {
var str = ui.item.value.split(',');
var lastIndex = str.length -1;
$('#two').val(str[lastIndex]); //ACHEIVED 2nd
}
});
然而,我得到了我的第二点,并努力为我的第一个问题找到解决方案
这是你的电话号码
请分享您的建议并为我指出正确的方向。根据文档,您可以将对象数组设置为源属性
标签
属性显示在建议菜单中。当用户选择项目时,值
将插入到输入元素中。如果只指定了一个属性,则它将同时用于这两个属性,例如,如果仅提供值
属性,则值
也将用作标签
请注意,旧版本的IE不支持数组的object.map()
方法,您可以使用ES5垫片或使用jQuery$.map()
实用程序函数:
$.map(arr, function(_, elem) {
return {
'label': elem.split(',')[0],
'value': elem.split(',')[1]
}
});
只需添加返回false代码>到您的代码
<input type='text' id="one" />
<input type='text' id="two" />
var json = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"];
$('input').autocomplete({
source: json,
select: function(event, ui) {
var str = ui.item.value.split(',');
var lastIndex = str.length -1;
$('#one').val(str[0]);
$('#two').val(str[lastIndex]); //ACHEIVED 2nd
return false;
}
});
var json=[“1,华金”,“2,贝纳迪诺”,“3,莫多克”,“4,马德拉];
$('input')。自动完成({
资料来源:json,
选择:函数(事件,ui){
var str=ui.item.value.split(',');
var lastIndex=str.length-1;
$('#one').val(str[0]);
$('#two').val(str[lastIndex]);//获得第二名
返回false;
}
});
+1太棒了。我喜欢源代码中的返回语句。如果您注意到两个文本框都填充了相同的值。在@Pragnesh Chauhan答案的帮助下,我获得了+1return false
。但是,autocomplete的下拉列表仍然显示这两个值。无论如何,谢谢,这是我需要的全部小提琴
<input type='text' id="one" />
<input type='text' id="two" />
var json = ["1,JOAQUIN", "2,BERNARDINO", "3,MODOC", "4,MADERA"];
$('input').autocomplete({
source: json,
select: function(event, ui) {
var str = ui.item.value.split(',');
var lastIndex = str.length -1;
$('#one').val(str[0]);
$('#two').val(str[lastIndex]); //ACHEIVED 2nd
return false;
}
});