单击按钮获取动态表值

时间:2018-10-27 04:24:24

标签: javascript php jquery html

点击 button id ='btn1'时,我需要获取动态表的特定 td 值。 td 值将以模式形式显示在 Display()中。

这是我的表格行代码:

$query = "SELECT SID , FNAME , MNAME , LNAME , SCONTACT , MOTHER_FNAME , MOTHER_MNAME , MOTHER_LNAME , MCONTACT FROM student"; $result = mysqli_query($db, $query); $result_check = mysqli_num_rows($result); if($result_check > 0){ while ($row = mysqli_fetch_assoc($result))
{ echo "
<tr class='tr'>
  <td class='nr'>" . $row["SID"] . "</td>"; echo "
  <td>" . $row["FNAME"] ."&nbsp;". $row["MNAME"] ."&nbsp;". $row["LNAME"] . "</td>"; echo "
  <td>" . $row["SCONTACT"] . "</td>"; echo "
  <td>" . $row["MOTHER_FNAME"] ."&nbsp;". $row["MOTHER_MNAME"] ."&nbsp;". $row["MOTHER_LNAME"] . "</td>"; echo "
  <td>" . $row["MCONTACT"] . "</td>"; echo "
  <td>" . "<button id='btn1' onclick='Display()' class='inline'>Create Offense</button>"; } }
echo "</td></tr>";

获取特定td值的代码:

<script type="text/javascript">
  $("#btn1").click(function() {
    var num = $(this).parents("tr").find(".nr").text();
    $(".resultas").text(num);
  });
</script>

我得到的只是第一行的td值。有提示吗?

2 个答案:

答案 0 :(得分:1)

您为每个元素设置了相同的ID,因此使用class代替id,将#btn1更改为.inline

<script type="text/javascript">
  $(".inline").click(function() {
    var num = $(this).parents("tr").find(".nr").text();
    $(".resultas").text(num);
  });
</script>

答案 1 :(得分:0)

您可以尝试以下方法:

$("#btn1").click(function() {
  
    // change the number in bracket to get specific column value | td:eq(1)
    var num = $(this).parents("tr").find("td:eq(1)").text();
    alert(num);
    
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table border="1">

  <tr>

    <td>111</td>
    <td>211</td>
    <td>311</td>
    <td><button id='btn1' class='inline'>Create Offense</button></td>

  </tr>

</table>