Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从引导筛选/搜索中获取当前选定项?_Javascript_Jquery_Bootstrap 4 - Fatal编程技术网

Javascript 如何从引导筛选/搜索中获取当前选定项?

Javascript 如何从引导筛选/搜索中获取当前选定项?,javascript,jquery,bootstrap-4,Javascript,Jquery,Bootstrap 4,我正在尝试在引导中创建一个过滤器/搜索功能。当用户搜索某个项目时,如果用户选择“输入”或“选择”该项目,则过滤器会将所做的选择缩小为一个结果。它应该用该项填充字段。我有基本的功能,但我似乎无法获得选择项目的部分 $(文档).ready(函数(){ $(“#myList”).toggle(); $(“#myInput”)。关于(“焦点”,函数(){ $(“#myList”).toggle(); }); $(“#myInput”)。在(“focusout”,function()上{ $(“#myL

我正在尝试在引导中创建一个过滤器/搜索功能。当用户搜索某个项目时,如果用户选择“输入”或“选择”该项目,则过滤器会将所做的选择缩小为一个结果。它应该用该项填充字段。我有基本的功能,但我似乎无法获得选择项目的部分

$(文档).ready(函数(){
$(“#myList”).toggle();
$(“#myInput”)。关于(“焦点”,函数(){
$(“#myList”).toggle();
});
$(“#myInput”)。在(“focusout”,function()上{
$(“#myList”).toggle();
});
$(“#myInput”)。在(“keyup”,function()上{
var value=$(this.val().toLowerCase();
$(“#myList li”).filter(函数(){
$(this).toggle($(this).text().toLowerCase().indexOf(value)>-1)
});
});
});

可筛选列表
在输入字段中键入某些内容以在列表中搜索特定项目:


    第一项 第二项 第三项 第四项

要填充字段,只需在项目中放置一个
单击事件,单击其中一个项目时,获取其文本并在字段中设置

问题在于,您的
focusout
事件在项目上的
单击
事件之前触发,因此它会在
单击
事件生效之前隐藏列表

为了克服这个问题,您可以设置一个小的超时(我设置为100毫秒)来隐藏
单击事件后的列表。一切都会好起来的

$(文档).ready(函数(){
$(“#myList”).toggle();
$(“#myInput”)。关于(“焦点”,函数(){
$(“#myList”).toggle();
});
$(“#myInput”)。在(“focusout”,function()上{
//在这里,它将等待100毫秒来隐藏列表。
setTimeout(函数(){
$(“#myList”).toggle();
}, 100);
});
$(“#myInput”)。在(“keyup”,function()上{
var value=$(this.val().toLowerCase();
$(“#myList li”).filter(函数(){
$(this).toggle($(this).text().toLowerCase().indexOf(value)>-1)
});
});
//这是选择选项后填充字段的代码。
$(#myList li”)。在(“单击”,函数()上{
var texto=$(this.text();
$(“#myInput”).val(texto);
});
});

可筛选列表
在输入字段中键入某些内容以在列表中搜索特定项目:


    第一项 第二项 第三项 第四项

我似乎无法让它工作,我做了一些编辑,但仍然无法将名称输入到输入字段。@kane\u 004但它在代码段中工作,对吗?什么对您不起作用?当您单击列表中的某个项目时,字段中的文本将更新。这就是它在片段中所做的。这不是你想要的吗?是的,现在可以了。我很抱歉,就在昨天,这个代码片段100%不起作用,但当我刚刚尝试它时,它起作用了。再次谢谢你,没问题。如果您认为它有用,您可以单击左侧的复选图标接受答案。:)