如何获取文本框的多个值onclick on复选框

时间:2017-05-10 06:34:27

标签: php jquery mysqli

代码:

<script>
  $(document).ready(function(){
    $(".check").click(function(){
      comment = $(".comment2").val();
      alert(comment);
    });
  });
</script>

<?php        
  $sql = "select * from enquires2";
  $result = mysqli_query($link,$sql);
  while ($row = mysqli_fetch_array($result)) 
  {
    echo "<tr>
            <td>
              <input type='checkbox' class='check' id='chk".$row['id']."' name='chk' value=".$row['id'].">
            </td>

            <td>
              <input type='text' name='comment2' class='comment2' id='comment2_".$row['id']."' value='' />
            </td>
          </tr>";
  }
?>

在此代码中,当我在comment2输入字段中输入文本然后选中复选框时,它仅警告第1行值,但是当我输入第二个文本框然后再次选中复选框时它不显示任何内容。那么,如何在复选框上点击多个文本框值?请帮忙。

谢谢

1 个答案:

答案 0 :(得分:0)

问题是,两个元素都是类.comment2,这意味着$(“。comment2”)为你创建一个数组,而.val()只获取数组中第一个元素的值。

你必须使用一个更独特的值(因为ID并不总是从0开始,一个简单的计数器不会起作用)

我可以建议

<script>
    $(document).ready(function(){
        $(".check").on("click", function(){
            var $id = $(this).val();
            comment = $("#comment2_" + $id).val();
            alert(comment);
        });
    });
</script>

使用$(this).val()获取复选框中保存的id值,并将其与ID comment2_x连接以获取输入框的内容