jquery搜索2个表之间的过滤器

时间:2015-08-14 07:31:58

标签: jquery

嗨我在过滤两个表时遇到问题, 我在堆栈溢出中搜索代码,然后让它工作

但是我发现如果我添加另一个表并重复该过程 我总是只有一个可以过滤的表

这是我的2个表的代码:

var $rows = $('#table1 tr');
   $('.search1').keyup(function() {
    var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

    $rows.show().filter(function() {
        var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
        return !~text.indexOf(val);
    }).hide();
   });

    var $rows = $('#table2 tr');
   $('.search2').keyup(function() {
    var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

    $rows.show().filter(function() {
        var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
        return !~text.indexOf(val);
    }).hide();
   });

只有#table2正在运作

这是我的HTML

表1 --------------------------------------------- -------

 Search: <input class="search1" type="text" />
                 <div id="content_table_database">
                  <table id="table1">
                  <?php

                  include('connection.php');
                  $result = mysql_query("SELECT * FROM shipments WHERE carrier_short_name !='' group by carrier_short_name ORDER by carrier_short_name ASC  " );

                                            while($test = mysql_fetch_array($result))
                                            {

                                                ?>
                                                <tr>
                                                <td style=" text-align:center; width: 25px;">
                                                <input type="checkbox" value="<?php echo $test['carrier_short_name']; ?>" />
                                                </td>
                                                <td>
                                                <?php echo $test['carrier_short_name']; ?>
                                                </td>
                                                </tr>


                  <?php }
                  ?>
                  </table>

表2 --------------------------------------------- --------------------

Search: <input class="search2" type="text" />

                 <div id="scac_code_database">

                 <table id="table2">
                  <?php

                  include('connection.php');
                  $result = mysql_query("SELECT * FROM shipments WHERE carrier_short_name !='' group by carrier_short_name ORDER by carrier_short_name ASC  " );

                                            while($test = mysql_fetch_array($result))
                                            {

                                                ?>
                                                <tr>
                                                <td style=" text-align:center; width: 25px;">
                                                <input type="checkbox" value="<?php echo $test['carrier_short_name']; ?>" />
                                                </td>
                                                <td>
                                                <?php echo $test['carrier_short_name']; ?>
                                                </td>
                                                </tr>


                  <?php }
                  ?>
                  </table>

                 </div>

1 个答案:

答案 0 :(得分:1)

您使用变量$rows两次,具有不同的含义。 使用其他名称var $rows = $('#table2 tr');

更改var $rows2 = $('#table2 tr');