javascript - 使用 jQuery 缩小文本搜索的选择范围

标签 javascript jquery

我在选择标签和输入文本框中有一些选项。一旦用户在文本框中输入内容,相关选项就会显示,其余选项需要隐藏。

    <select size="8" style="width:150;">  
    <option value="something1">Apple</option>  
    <option value="something1">Banana</option>  
    <option value="something2">Mango</option> 
    <option value="something2">Orange</option> 
    <option value="something2">Papaya</option> 
    <option value="something3">Grape</option> 
    <option value="something3">Coco</option> 
    <option value="something3">Chocolate</option> 
 </select>
    <input type="text" > 

当我在文本框中输入 ap 时,只有 Apple、Papaya 应该可见。请让我知道如何通过 jQuery 实现此目的。

最佳答案

演示: https://so.lucafilosofi.com/narrow-down-the-select-options-from-text-search-using-jquery

        $(function() {
               $('input.search').on('change', function() {
                    $(this).prev('select.term').find('option:not(:containsi(' + this.value + '))').hide();
                }).on('keyup', function() {
                    $(this).prev('select.term').find('option:containsi(' + this.value + ')').show().attr('selected', true);
                }).extend($.expr[':'], {
                'containsi' : function(elem, i, match, array) {
                    return (elem.textContent || elem.innerText || '').toLowerCase().indexOf((match[3] || '').toLowerCase()) >= 0;
                }
            });
        });

关于javascript - 使用 jQuery 缩小文本搜索的选择范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7008595/

相关文章:

javascript - Uncaught TypeError : $template. get 不是一个函数

javascript - jQuery 选择器 - 匹配元素的内容

javascript - 单击任意位置即可关闭菜单

php - 为什么此点击处理程序 fadeToggle 代码不起作用?

javascript - 表单提交后重置文本字段

java - 使用ajax保存单击时单选按钮的值

javascript - 使用 jQuery 遍历 XML 获取元素值

javascript - 将对象(带有对象)传递给组件时出现 Vuex 突变错误

javascript - 迁移 Ext JS 4 代码库时无法覆盖 Ext.data.proxy.Ajax 实例上的方法 afterRequest

javascript - 模态进度条打破了我的下拉菜单 bootstrap 3.x