Php 为了使用ajax,如何将行链接的id传递给jquery?

Php 为了使用ajax,如何将行链接的id传递给jquery?,php,jquery,Php,Jquery,如何通过jquery传递编辑或删除链接的id以使用ajax和php? 这是我在前端显示链接的代码 foreach($cat->getCategories() as $key => $val){ echo $val."&nbsp;&nbsp;&nbsp;<a id='editcat' href=edit.php?id=".$key.">Edit</a>&nbsp;&nbsp;&nbsp;<a

如何通过jquery传递编辑或删除链接的id以使用ajax和php? 这是我在前端显示链接的代码

foreach($cat->getCategories() as $key => $val){
        echo $val."&nbsp;&nbsp;&nbsp;<a id='editcat' href=edit.php?id=".$key.">Edit</a>&nbsp;&nbsp;&nbsp;<a id='deletecat' href=delete.php?id=".$key.">Delete</a><br />";
}

将$key的值放入rel标记中,

然后在函数中使用它

$('#editcat').click(function(){    
   var id = $(this).attr("rel");    
});

按如下方式修改您的foreach:

foreach($cat->getCategories() as $key => $val){
        echo $val."&nbsp;&nbsp;&nbsp;<a id='editcat' href=edit.php?id=".$key.">Edit</a>&nbsp;&nbsp;&nbsp;<a id='deletecat' href=delete.php?id=".$key.">Delete</a><br />";
        echo "<input type="hidden" id="key" value=".$key." />";
}

希望这有帮助。

更改您的PHP,标记上必须有唯一的ID

foreach($cat->getCategories() as $key => $val){
        echo $val."&nbsp;&nbsp;&nbsp;<a id='editcat_.$key' class="editcat" href=edit.php?id=".$key.">Edit</a>&nbsp;&nbsp;&nbsp;<a id='deletecat_.$key' class='deletecat' href=delete.php?id=".$key.">Delete</a><br />";
}

使用PHP代码,您将获得一组具有相同id的链接,这是错误的,这是正确的,他需要相同的id来编辑和删除特定行。在HTML中具有相同的id是错误的,无论如何,让我们假设我想在ajax调用之前添加一个警报?我是否应该将警报放在var id行的底部,然后添加一个返回false。。然后是ajax?当然,但是如果在ajax代码之前放置一个返回值false,那么它将永远不会触发它。firebug控制台说,缺少形式参数[Break On This Error]$(“#deletecat”)。单击(函数(This){必须从
函数()中删除
This
参数
call。请立即使用我更新的代码进行尝试。按页面(按类别)仍将有多个“edicat”和“delecat”id
   $('#editcat').click(function(){
        var key = $('#key').val();
   });

   $('#deletecat').click(function(){
        var key = $('#key').val();
   });
foreach($cat->getCategories() as $key => $val){
        echo $val."&nbsp;&nbsp;&nbsp;<a id='editcat_.$key' class="editcat" href=edit.php?id=".$key.">Edit</a>&nbsp;&nbsp;&nbsp;<a id='deletecat_.$key' class='deletecat' href=delete.php?id=".$key.">Delete</a><br />";
}
$('.editcat').click(function(){
    var id = (($(this).attr('id')).split('_', 2))[1];
    // do your other stuff here...
});

$('.deletecat').click(function(){
    var id = (($(this).attr('id')).split('_', 2))[1];
    // do your other stuff here...
});