2010-08-13 68 views
2

调用PHP脚本现在我有这样的:使用Ajax和jQuery

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和回声“评论删除”。但我想将其与我目前的网站进行整合,所以你不会去另一个页面删除这个纪念品。有了这个,我想到了使用一个AJAX调用removeWallComment.php。现在

,你的链接看到它需要三个变量,iduIDBuID,我想POST,不GET发送,使用户无法看到地址栏的变量。成功时,它应该提醒你。

我该怎么做?

回答

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为安全起见,这不是最好的方法)。