使用ajax和jQuery调用PHP脚本

时间:2010-08-13 13:25:49

标签: php javascript jquery ajax

现在我有这个:

echo "<a href='misc/removeWallComment.php?id=" . 
    $displayWall['id'] . "&uID" . $displayWall['uID'] . "&BuID" . 
    $displayWall['BuID'] . "' title='ta bort inlägg'> 
    <span class='removeWallComment'></span> </a>";

它是一个图标,其中包含一个链接,可在您单击时删除注释。

现在,它转到misc/removeWallComment.php并回显“删除了评论”。但我想将它与我当前的网站集成,所以你不要去另一个页面删除这个纪念品。有了这个,我想到了对removeWallComment.php使用ajax调用。

现在您在链接上看到它需要三个变量iduIDBuID,我想发送POST,而不是GET所以用户无法在地址栏中看到变量。成功之后,它应该提醒。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

这样问题才能得到答案:

var links = $('.removeWallComment').parent();

links.click(function(event) {
    // Parse out the ids
    var data = this.href.substring('?').split('&');

    var id = data[0].substring(data[0].indexOf('=') + 1);
    var uid = data[1].substring(data[1].indexOf('=') + 1);
    var BuID = data[2].substring(data[2].indexOf('=') + 1);

    $.post('misc/removeWallComment.php', {
        'id': id,
        'uid': uid,
        'BuID': BuID
    }, function(data){
        // Success!
        alert('OK');
    });

    event.preventDefault();
});

如果您使用GETPOST并不重要,如果您使用的是ajax,则用户将永远不会在地址栏中看到三个id。但是,必须以某种方式得到三个id,所以在这种情况下我们正在解析它们的href值(必须存储三个id 在某处,最好是在元素本身上以便于检索。如果你出于安全考虑隐藏id,这不是最好的方法。)