4

30.000 を超えるエントリのリストがあります。

文字列の長さが 2 より大きい場合に検索を開始することはできますか?

コード:

<div class="content-primary">      
   <ul data-role="listview" data-filter="true" data-inset="true">
      <li><a href="#">1</a></li>
      <li><a href="#">2</a></li>
      ...
      <li><a href="#">30.000</a></li>
   </ul>
</div>
4

1 に答える 1

0

それぞれ<a></a>(リンク)に一意のIDを指定し、すべてのリンク()の各値を取得するjQueryスクリプトを作成し.text() .lengthてから、適切な長さのオブジェクトまたはそうでないオブジェクトを「表示」または「非表示」にすると.show().hide()

ここに例があります:http://jsfiddle.net/499rb/12/

これは、すべての要素をループして、適切な量の文字を持つ要素を判別し、それらを表示または非表示にする関数です。

$(function(){
  $('.info_link').click(function(){
    for (var i = 1; i <= 10; i++)
    {
        var str = $("#a_"+i).text();

        if (str.length >= 2) {
            $("#li_"+i).show();
        }else{
            $("#li_"+i).hide();
        }
    }
  });
});

フィルタリング関数とすべての要素を呼び出す「リンクボタン」のあるHTMLページは次のとおりです。

<a class="info_link" href="#">FILTER: TEXT.LENGTH >= 2</a>

<ul>
    <li id="li_1">
        <a id="a_1" href="#">1</a>
    </li>
    <li id="li_2">
        <a id="a_2" href="#">2</a>
    </li>
    <li id="li_3">
        <a id="a_3" href="#">3</a>
    </li>
    <li id="li_4">
        <a id="a_4" href="#">4</a>
    </li>
    <li id="li_5">
        <a id="a_5" href="#">5</a>
    </li>
    <li id="li_6">
        <a id="a_6" href="#">6</a>
    </li>
    <li id="li_7">
        <a id="a_7" href="#">7</a>
    </li>
    <li id="li_8">
        <a id="a_8" href="#">8</a>
    </li>
    <li id="li_9">
        <a id="a_9" href="#">9</a>
    </li>
    <li id="li_10">
        <a id="a_10" href="#">10</a>
    </li>
</ul>
于 2012-12-05T10:41:29.553 に答える