通过输入框&过滤选择列表jQuery的 [英] Filtering a select list via input box & jquery

查看:107
本文介绍了通过输入框&过滤选择列表jQuery的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道是否可以通过jquery使用输入框过滤选择列表方面获得帮助.

I was wondering if i could get some help with filtering a select list using an input box via jquery.

这是我的js的样子,但是似乎不起作用. 我猜这是因为选择列表中的选项不可隐藏.

Here's what my js looks like, but it doesnt seem to work. I'm guessing this is because options within a select list are not hide-able.

    <script type="text/javascript">
    $(document).ready(function() {
        $("#inputFilter").change(function() {
            var filter = $(this).val();

            $("#selectList option").each(function() {
                var match = $(this).text().search(new RegExp(filter, "i"));
                if (match > 0) {
                    $(this).show(); // Does not work
                }
                else
                    $(this).hide();
            });
        });
    });
</script>

这是我的html

<input id="inputFilter" />
<select id="selectList">
    <option value="1111" >1111 - London</option>
    <option value="1112" >1112 - Paris </option>
</select>

推荐答案

请尝试以下操作:

$("#inputFilter").change(function() {
    var filter = $(this).val();
    //alert(filter);
    $("#selectList option").each(function() {
        var match = $(this).text().search(new RegExp(filter, "i"));
        //alert(match);
        if (match < 0 && $(this).text() != "--select--")  {                   
            $(this).attr("disabled",true);
        }
        else
            $(this).attr("disabled",false);

    });
});

您可以在此处看到它.

HTH

这篇关于通过输入框&amp;过滤选择列表jQuery的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆