如何获取单击的行id值?

时间:2013-03-18 11:27:54

标签: javascript php html-table onclick row

我通过从数据库中获取值来生成表。 我将主键值设置为行的id值,我也在该行中有按钮。 单击按钮时如何获取相应的id值。

  while($pack = mysql_fetch_array($get_pack))
    {
       echo"<tr id='<php echo $pack[id];?>'>";
       echo'<td> <input name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack()"/></td>';
     }

function edit_pack()
   {
   alert("package editing")
   alert(this.id)
   }

8 个答案:

答案 0 :(得分:3)

尝试使用纯JavaScript解决方案:

function edit_pack() {
    alert(this.parentNode.parentNode.id);
}

第一个parentNode将获得<td>,第二个将获得<tr>。然后,我们获得id属性。

或者,如果您使用jQuery,语法会更好一些:

function edit_pack() {
    alert($(this).closest('tr')[0].id;
}

答案 1 :(得分:0)

试试这个:

  var trid = $(this).closest('tr').attr('id');

答案 2 :(得分:0)

您可以将其设置为js功能的参数。

echo'<td> <input name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack( ' .$pack['id']. ' )"/></td>';

然后在js

function edit_pack(id){ 
  alert(id);
}

答案 3 :(得分:0)

只需将值放入JS调用

即可

PHP

while($pack = mysql_fetch_array($get_pack))
{
   echo '<tr id="'.$pack[id].'">';
   echo '<td> <input name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack('.$pack[id].')"/></td>';
 }

的Javascript

function edit_pack(id) {
   alert(id);
}

答案 4 :(得分:0)

可能这就是你需要的

while($pack = mysql_fetch_array($get_pack))
{
   echo"<tr id='<php echo $pack[id];?>'>";
   echo'<td> <input parentrow_id='<php echo $pack[id];?>' name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack(this.parentrow_id)"/></td>';
 }

答案 5 :(得分:0)

如果您不想使用jquery,请执行以下操作:

 while($pack = mysql_fetch_array($get_pack))
 {
    echo"<tr id='<php echo $pack[id];?>'>";
    echo'<td> <input name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack('<?php echo $pack[id];?>')"/></td>';
 }

function edit_pack(pack_id)
{
   alert("package editing");
   alert(pack_id);
}

答案 6 :(得分:0)

试试这个:

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
 <script>
    $(document).ready(function(){
       $("[name=edit_pack]").click(function(){
           alert($(this).parents("tr").attr('id'));
       });
    });
 </script>
<?php
       echo"<table name='test'>";
       echo"<tr id='20'>";
       echo'<td> <input name="edit_pack" type="button" value="Edit" onclick="javascript:edit_pack()"/></td>';
       echo"</tr>";
       echo"</table>";
?>

答案 7 :(得分:0)

 while($pack = mysql_fetch_array($get_pack)){
       echo"<tr id='$pack[id]'>";
       echo " <td> <input name='edit_pack' type='button' value='Edit' onclick='edit_pick($pack[id]);'/></td>";
        echo "</tr>";
   }  

您可以传递参数JavaScript函数