麻烦我的ajax帖子脚本

时间:2011-05-08 19:45:30

标签: php jquery ajax

好的,所以我的ajax如下 - 当有人点击此链接时:

$echo " | <a href=\"javascript:void(0);\"  id=".$larray['idnum']." class=\"deleterow\">Delete Friend</a>";

我使用ajax / jquery将数据发送到delete_ajax.php

$(".deleterow").click( function() {
    $('.deleterow').attr('id');
    var dr= $(this).attr('id');
    $.post("delete_ajax.php", { id: dr } );
} );

有人可以仔细检查这一切是否正确?

2 个答案:

答案 0 :(得分:3)

首先,检查您的代码是否在文档加载事件中执行。为此,将所有jquery代码括在$(function(){ ... })

然后,使用id=".$larray['idnum']."和:

代替data-id=".$larray['idnum']."
$(".deleterow").click( function() {
    $.post("delete_ajax.php", { id: $(this).data('id'); } );
} );

最后,您可以使用<a>代替<div>,只需将cursor:pointer添加到其类或样式中,这样光标的形状就像一只手。

答案 1 :(得分:0)

我不知道为什么我对此做出回应但是没有

您应该使用类似握手的请求与服务器通信。双方应确认请求,以了解事件是否成功。

在delete_ajax.php ....

if ($this->db->delete('table', 'where ..')){
   echo json_encode(array('result'=>1, 'message'=>'delete successful'));
} else {
   echo json_encode(array('result'=>0, 'message'=>'delete unusuccessful'));
}

让你的ajax确认回应。

$(".deleterow").click( function() {
    // $('.deleterow').attr('id'); // pointless..
    var dr= $(this).attr('id');
    $.post( "delete_ajax.php", 
       { id: dr },
       function (reponse){
           alert(response['message']);
       }, 'json'
    );
} );