无法选择JQuery(移动)/JavaScript选择选项

无法选择JQuery(移动)/JavaScript选择选项,javascript,jquery,jquery-mobile,select,option,Javascript,Jquery,Jquery Mobile,Select,Option,我创建了一个搜索过滤器,用于分离与用户输入内容不匹配的选项 例如,该列表包含:hello,再见,halo,如果我输入h,那么它将只显示hello和halo 我面临的问题是,如果有一个选项,我无法选择它,但如果有多个选项,我可以 以下是JSFIDLE的完整代码: 若要重新创建问题:请在输入框中输入另一个,然后尝试在“选择”菜单中选择“执行另一个”选项 如果有多个选项,我可以选择任何选项,因此如果我输入单词do,那么我可以选择包含该单词的任何选项 var probOptions = $("#prob

我创建了一个搜索过滤器,用于分离与用户输入内容不匹配的选项

例如,该列表包含:hello,再见,halo,如果我输入h,那么它将只显示hello和halo

我面临的问题是,如果有一个选项,我无法选择它,但如果有多个选项,我可以

以下是JSFIDLE的完整代码:

若要重新创建问题:请在输入框中输入另一个,然后尝试在“选择”菜单中选择“执行另一个”选项

如果有多个选项,我可以选择任何选项,因此如果我输入单词do,那么我可以选择包含该单词的任何选项

var probOptions = $("#problem>option");

function searchFilter() {
    $("#searchInput").change(function() {
        var searchString = $(this).val().toLowerCase();
        $("#problem").empty().append(probOptions);
        $("#problem>option").each(function() {
            var text = $(this).text().toLowerCase();
            if (text.indexOf(searchString) <= -1) {
                $(this).detach();
                // THE LINE BELOW FIXES THE PROBLEM (THE LINE BELOW IS NEWLY ADDED)
                $("#problem").selectmenu("refresh");
            }

        });

    });

}

searchFilter();

我自己设法解决了这个问题

显然,对于jquerymobile,您需要刷新列表,而标准JQuery则不需要

以下是解决方案,问题在于选择菜单的ID:

$("#problem").selectmenu("refresh");

希望这能帮助任何有这个问题的人

你在使用jQuery Mobile framework吗?嗨,Omar,是的,我在使用jQuery Mobile。我已经设法解决了这个问题,如果你遇到了我遇到的类似问题,请检查我的答案。谢谢你花时间看我的问题。