jQuery - 我想选择一行并提醒它

时间:2014-09-12 05:27:27

标签: jquery

我想选择一行并获取警告框的用户名。所以我使用jquery选择器来完成这项任务。但不幸的是,jquery始终给出第一行数据。它的解决方案是什么?

这是我的html数据

<tabel>

<?php
while(!result){
?>
<tr>
<td><input type='hidden' name='edit' value = <?php $result['username'] ?> /> <button id='edit' value='edit' >Edit User</button>'<td>

</tr>

<?php
}
?>
</table>

jquery的

var cmd = $('input[name=edit]').val();
alert('cmd');


What is the solution for it? 

2 个答案:

答案 0 :(得分:0)

首先将按钮的id="edit"更改为class="edit",因为ID应该唯一使用。 示例html

<table>
<tr>
    <td><input type='hidden' name='edit' value ='1' /> 
        <button class='edit' value='edit' >Edit User</button>
    </td>
</tr>    
    <tr>
    <td><input type='hidden' name='edit' value ='2' /> 
        <button class='edit' value='edit' >Edit User</button>
    </td>
</tr>
    <tr>
    <td><input type='hidden' name='edit' value ='3' /> 
        <button class='edit' value='edit' >Edit User</button>
    </td>
</tr>
</table>

<强> Jquery的

// 使用prev()函数 阅读here

$('.edit').live('click',function(){
    alert($(this).prev('input').val());
})

// <强> Or using parent() and find() function

了解parent选择器

了解find选择器

  $('.edit').live('click',function(){
        alert($(this).parent().find('input').val());
    })

小提琴here

答案 1 :(得分:0)

使用这样的代码。我已经格式化了你的代码,因为它有一些问题。

<强> HTML / PHP

<table>
<?php
    while(!$result){
?>
    <tr>
        <td>
            <input type='hidden' name='edit' value = '<?php echo $result["username"]; ?>' />
            <button id='edit' value='edit'>Edit User</button>
        <td>
    </tr>
<?php
    }
?>
</table>

<强> JQUERY

<script>
    $("#edit").click(function(){
        var cmd = $(this).prev('input').val();
        alert(cmd);
    });
</script>