jquery自动完成过滤器基于第一个值的第二个过滤器
我有两个自动完成jquery功能。我只想在第二个文本字段中显示基于第一个文本字段上的一个选项的值。我不想更改原始的aVal数组,因为如果有人更改第一个txt值,第二个必须在其上进行调整 以下是代码和:jquery自动完成过滤器基于第一个值的第二个过滤器,jquery,autocomplete,Jquery,Autocomplete,我有两个自动完成jquery功能。我只想在第二个文本字段中显示基于第一个文本字段上的一个选项的值。我不想更改原始的aVal数组,因为如果有人更改第一个txt值,第二个必须在其上进行调整 以下是代码和: 这是正确的解决方案(源函数上只有一个小错误-多亏了) $(函数(){ var份额=-1; var aVal=[{ 标签:“奇数”, 值:“1” }, { 标签:“偶数”, 值:“2” } ]; var bVal=[{ 标签:“一个”, 值:“1” }, { 标签:“两个”, 值:“2” }
这是正确的解决方案(源函数上只有一个小错误-多亏了)
$(函数(){
var份额=-1;
var aVal=[{
标签:“奇数”,
值:“1”
},
{
标签:“偶数”,
值:“2”
}
];
var bVal=[{
标签:“一个”,
值:“1”
},
{
标签:“两个”,
值:“2”
},
{
标签:"三",,
值:“1”
},
{
标签:“四个”,
值:“2”
}
];
$(“#输入_txt”).autocomplete({
最小长度:0,
资料来源:aVal,
焦点:功能(事件、用户界面){
$(“#输入_txt”).val(ui.item.label);
返回false;
},
选择:功能(事件、用户界面){
$(“#输入_txt”).val(ui.item.label);
$(“#输入值”).val(ui.item.value);
共享=ui.item.value;
//警报(共享);
返回false;
}
})
$(“#第二次输入_txt”).autocomplete({
最小长度:0,
来源:功能(请求、响应){
var bValnew=新数组();
if(share==-1)返回bValnew;
对于(var a=0;类似于此?好的,现在它工作了,源函数有一个小错误。谢谢
$(function() {
var shared;
var aVal = [{label: "odd", value: "1"},
{ label: "even", value: "2"}
];
var bVal = [{ label: "one", value: "1"},
{ label: "two", value: "2"},
{ label: "three", value: "1"},
{ label: "four", value: "2"}
];
$( "#input_txt" ).autocomplete({
minLength: 0,
source: aVal,
focus: function( event, ui ) {
$( "#input_txt" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#input_txt" ).val( ui.item.label );
$( "#input_val" ).val( ui.item.value );
shared = ui.item.value;
return false;
}
})
$( "#second_input_txt" ).autocomplete({
minLength: 0,
source: bVal,
focus: function( event, ui ) {
if(ui.item.value == shared){
$( "#second_input_txt" ).val( ui.item.label );
}
return false;
},
select: function( event, ui ) {
$( "#second_input_txt" ).val( ui.item.label );
$( "#second_input_val" ).val( ui.item.value );
return false;
}
})
});
$(function() {
var share=-1;
var aVal = [{
label: "odd",
value: "1"
},
{
label: "even",
value: "2"
}
];
var bVal = [{
label: "one",
value: "1"
},
{
label: "two",
value: "2"
},
{
label: "three",
value: "1"
},
{
label: "four",
value: "2"
}
];
$( "#input_txt" ).autocomplete({
minLength: 0,
source: aVal,
focus: function( event, ui ) {
$( "#input_txt" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#input_txt" ).val( ui.item.label );
$( "#input_val" ).val( ui.item.value );
share = ui.item.value;
//alert(share);
return false;
}
})
$( "#second_input_txt" ).autocomplete({
minLength: 0,
source: function(request, response){
var bValnew=new Array();
if(share==-1) return bValnew;
for(var a=0;a<bVal.length;a++){
if(bVal[a].value==share){
bValnew.push(bVal[a]);
}
}
response(bValnew);
},
focus: function( event, ui ) {
$( "#second_input_txt" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#second_input_txt" ).val( ui.item.label );
$( "#second_input_val" ).val( ui.item.value );
return false;
}
})
});