Javascript 输入选择器在设置值后处理过滤器
我使用的是“”可以找到它的引用。 我使用这个插件的下拉菜单。我使用以下代码启动下拉列表:Javascript 输入选择器在设置值后处理过滤器,javascript,jquery,input,dropdown,Javascript,Jquery,Input,Dropdown,我使用的是“”可以找到它的引用。 我使用这个插件的下拉菜单。我使用以下代码启动下拉列表: $('#test').inputpicker({ data:[ {value:"1",text:"USD"}, {value:"2",text:"EUR"}, {value:"3",text:"CNY"} ], fie
$('#test').inputpicker({
data:[
{value:"1",text:"USD"},
{value:"2",text:"EUR"},
{value:"3",text:"CNY"}
],
fields:[
{name:'value',text:'Id'},
{name:'text',text:'Title'}
],
autoOpen: true,
headShow: false,
filterOpen: true,
fieldText : 'text',
fieldValue: 'value'
});
我可以按代码设置列表中的选定项:
$('#test').inputpicker('val', 1); // selecting "USD"
设置“我的”字段的值后,当用户尝试打开下拉列表并查找其他项目时,除了“USD”之外,没有可见的项目。要选择其他项目,用户应手动擦除所有字符,然后显示其他项目
我正在寻找一种方法来显示所有项目后,设置选定的项目
我在这里创建了一个代码示例:
有点老套,但它可以工作:
设置过滤器open:false
,这将阻止在第一次打开时过滤数据
绑定到focus
事件并设置filterOpen=true
。这将重新启用筛选
$(document).ready(function(){
$('#test').inputpicker("val" , "1");
});
$('#test').inputpicker({
data:[
{value:"1",text:"USD"},
{value:"2",text:"EUR"},
{value:"3",text:"CNY"}
],
fields:[
{name:'value',text:'Id'},
{name:'text',text:'Title'}
],
autoOpen: true,
headShow: false,
filterOpen: false,
fieldText : 'text',
fieldValue: 'value'
});
$('#inputpicker-1').on("focus", function() {
$('#test').inputpicker("set" , "filterOpen", true);
});
我认为,您应该在代码开始时停用过滤器,否则,它将仅显示根据文本框内容提供的内容 根据
InputPicker
的文档,将filterOpen
设置为false
将停用过滤器,并显示所有数据
更准确地说,您只需在初始代码中将其设置为false
$(文档).ready(函数(){
$('#test')。输入选择器(“val”,“1”);
});
$(“#测试”).inputpicker({
数据:[
{值:“1”,文本:“USD”},
{值:“2”,文本:“EUR”},
{值:“3”,文本:“CNY”}
],
字段:[
{name:'value',text:'Id'},
{名称:'text',文本:'Title'}
],
自动打开:对,
头像:假,
过滤器打开:错误,
fieldText:“文本”,
fieldValue:“值”
});
你确定你正在“选择”一个项目,而没有设置下拉数据是什么?是的,在清除我的输入后,将显示其他项目。你能让你的代码运行吗?检查此链接:我检查了你的代码,因为你设置了过滤器打开:true
。我把它拿走了,它工作正常