0

我创建了一个页面,在其中执行搜索,产品数量以行的形式返回,其中包含名称、价格和所有内容。这些行是使用clonejQuery 的特性动态创建的。每行都有一个复选框,也是通过克隆创建的。

我现在正在尝试的是遍历每一行并根据复选框是否被选中来获取每一行中的值。但是在动态克隆的表中,遍历似乎是一个问题。

4

1 回答 1

1

我希望我正确理解了您的挑战。此示例显示一个警报,其中包含选中复选框的克隆行的复选框值,忽略未选中的复选框。虽然我确定这不是您正在寻找的内容,但您可以以此为例说明如何遍历克隆表。

这是 jsFiddle 上的示例。

<!DOCTYPE html>
<html>
<head>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>

  <script type="text/javascript">

    $(document).ready(function() {

      var orig_table_rows = $('#original_table').children().clone();

      $("#new_table").append(orig_table_rows);

      orig_table_rows.children().each(function() {
        $(this).find("input:checked").each(function() {
          alert( $(this).val() );
        });
      });

    });

  </script>
</head>
<body>

original table:
<table id="original_table" style="border:1px solid red;">
  <tr>
    <td><input type="checkbox" name="checkbox_name" value="not_checked_value"></td>
    <td>name</td>
    <td>price</td>
    <td>everything</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="checkbox_name" value="checked_value" checked></td>
    <td>name</td>
    <td>price</td>
    <td>everything</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="checkbox_name" value="another_checked_value" checked></td>
    <td>name</td>
    <td>price</td>
    <td>everything</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="checkbox_name" value="not_checked_value"></td>
    <td>name</td>
    <td>price</td>
    <td>everything</td>
  </tr>
</table>

<br>
<br>

table using the cloned rows:
<table id="new_table" style="border:1px solid blue;">
</table>

</body>
</html>
于 2012-09-22T23:52:35.843 回答