从循环中获取正确的ID

时间:2012-10-17 20:49:29

标签: jquery map

我有一个foreach,用PHP打印数据库中的数据。我得到了每个行的链接,允许我从数据库中删除每个数据。在foreach下方,我得到了input type="hidden",其中数据的ID为值。

<?php
    foreach($sql->query("SELECT * FROM table") AS $row) {
        <input type="hidden" value="'.(int)$row['id'].'">
        echo $row['name'].' (<a href="javascript:void(0)" id="delete-row">delete</a>)';
    }
?>

经过一些激烈的谷歌搜索,我想出了这个。但是,当我点击“删除”链接时,它会使用此代码打印循环中的每一行。

$(document).ready(function() {
    $('#delete-row').click(function() {
        var val = $('input[type="hidden"]').map(function() {
            return this.value;
        }).get();

        alert(val);
    });
});

这是错的!我想获得我点击的链接的ID。如果我点击ID为3的链接,它将以ID 3提醒我。你知道如何解决我的问题吗?

提前致谢。

1 个答案:

答案 0 :(得分:4)

我甚至不会使用隐藏字段。

<?php
    foreach($sql->query("SELECT * FROM table") AS $row) {
        echo $row['name'].' (<a href="javascript:void(0)" data=". (int)$row['id'] ." class="delete-row">delete</a>)';
    }
?>


$(document).ready(function() {
    $('.delete-row').click(function() {
        var val = $(this).attr('data');    
        alert(val);
    });
});