繁体   English   中英

使用过滤器功能匹配选项标签的文本

[英]matching text of option tag using filter function

我有两个选择框。 在第一个选择框发生更改事件时,我将该文本添加到第二个选择框中。 但是我不想添加重复的record。为此,我正在使用过滤器功能,(如果已经添加了任何文本,那么我不想再次添加),但是它无法按我的要求工作。

html

<select id="ddlCategory">
           <option value="0">Select Category</option>
           <option value="1">Category 1</option>
           <option value="2">Category 2</option>
           <option value="3">Category 3</option>
 </select>

<select multiple="multiple" id="my-select" name="my-select[]" class="multiDrop"> </select>

<select multiple="multiple" id="your-select" name="my-selectyour[]" class="multiDrop">

myJs:

  $('#my-select').change(function () {
        var getValue = $(this).find('option:selected').val();
        var getText = $(this).find('option:selected').text();
        var getCategory = $('#ddlCategory').find('option:selected').text();
        if ($('#your-select > option').hasClass(getCategory)) {
            $("#your-select > option").filter(function (index) {
                if ($(this).html() == getText) {
                    return;
                }
                $('#your-select').append('<option value="' + getValue + '" class="' + getCategory + '">' + getText + '</option>');
            });


        } else {
            $('#your-select').html('<option value="' + getValue + '" class="' + getCategory + '">' + getText + '</option>');
        }
    });

杰斯菲德尔

在这里,您...我编辑的小提琴: http : //jsfiddle.net/stoz1m6v/2/

这样,它不会重复myselect中的条目。。。您在那里检查了删除的类/类别,因为我发现它做得不正确,但是我无法理解您到底想如何检查类别...

脚本如下所示:我只更改了my-select的更改处理程序:

    $('#my-select').change(function () {
        var getValue = $(this).find('option:selected').val();
        var getText = $(this).find('option:selected').text();
        var getCategory = $('#ddlCategory').find('option:selected').text();
        if ($("#your-select > option").filter(function (index) {
            return $(this).html() == getText; }).length ==0) { 
            $('#your-select').append('<option value="' + getValue + '" class="' + getCategory + '">' + getText +        '</option>');
        }

    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM