0

inputその中で検索する要素が1つあります。また、Unicode right-to-left Language である名前のリストが 1 つあります。

入力を入力してリストを検索し、結果の検索のみliを表示し、別liのリストを非表示にします。

これは私のコードで(しかし、私のjQueryコードは機能しません!!! :(そして、私のコードが英語(左から右へのUnicode言語)で機能することを理解しています!!!それについて教えてください。)

jQuery:

var $lis = $('#friend-list li');
$('#searching').on('keyup', function() {
    var regex = new RegExp(this.value, 'i');

    //hide all li elements
    $lis.hide();

    //now filter those li elements which is having the searched text and show them
    $lis.filter(function(){
        return regex.test($(this).find("span:not('.stat')").text());
    }).show();
});

完全なコード

4

1 に答える 1

1

私はそれを修正しました、それはあなたを助けるかもしれません

var $lis = $('#friend-list li div');
$('#searching').on('keyup', function() {


    //hide all li elements
    $lis.hide();
    for(var i =0; i<$('ul >li').length; i++)
    { var str = $lis.eq(i).text().toLowerCase();
     if(str.indexOf((this.value).toLowerCase()) !== -1){
         $lis.eq(i).show();

     }
    }
   });

フィドルのデモ

リストされた文字のいずれかをコピーして貼り付けると、一致するテキストが表示されます。

于 2013-09-05T08:16:34.017 に答える