将相同功能应用于另一个列表

时间:2019-08-30 04:27:45

标签: javascript html

我有3个单独的列表,具有不同的href。我在jQuery中具有函数,我需要将相同的函数应用于所有列表元素。

  $('li').click(function() {
    $('li').val(this).toggle(); //i tried using instead of .val => .text
    $('li').not(this).hide();
    $(this).find('li').toggle();
});

我有3个具有相同值的li标签,只有一次输入和每个列表具有不同的“ ID”。

<input type="text" id="cautaechipamente" onkeyup="searchech()" placeholder="Search for..." name="search"> 
          <ul id="listsearch" class="list-group">
            <li><a href="#" name="#">Element 1</a></li>
            <li><a href="#" name="#">Element 2</a></li>
            <li><a href="#" name="#">Text 1</a></li>
            <li><a href="#" name="#">Text 2</a></li>
        </ul>

我需要修改JS函数,以便当您单击列表1中的“元素1”时,列表2和列表3中的“元素1”将保留在屏幕上。

检查:https://jsfiddle.net/cuforwya/

1 个答案:

答案 0 :(得分:0)

我认为您可能想要这样的东西:Fiddle

// on list item click 
$("li").click(function(){
    var match = $(this).children("a").html().toLowerCase();
    // iterate over all list items
    $("li").each(function(i, elem){
        // if the iterated list item doesn't match the clicked item, hide it
        if($(elem).children("a").html().toLowerCase() != match){
            $(elem).hide();
        }
    });
});