使用JQuery通过URL传递变量

时间:2012-12-14 19:23:05

标签: php jquery

我有这个但是没有工作,这是两个答案的混合(http://stackoverflow.com/questions/10369432/passing-link-with-parameters-with-jquery)...警告信息出来是空的,因此delete.php没有做任何事情

任何评论。我正在使用JQuery 1.8

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function(){

  $(".delete").click(function(e){
    var del_id = $(this).attr("id");
    e.preventDefault();
    $.post("../folder/delete.php", { iid: del_id } ,function(data){
    alert(data)
        //change the link to deleted
        $('#'+del_id).replaceWith('<a href="#" class="delete">Deleted</a>');


    });
  });
});

</script>
</head>
<body>
 <a class="delete" id="1" href='#'>Delete 1</a>
 <a class="delete" id="2" href='#'>Delete 2</a>
 <a class="delete" id="3" href='#'>Delete 3</a>
</body>
</html>

Delete.php如下:

<?php 
    extract($_POST); 
    extract($_GET); 
    if ($del_id!=0){ 
        require_once("../includes/include.php"); 
        deleteItem($del_id); 
    } 
?>

1 个答案:

答案 0 :(得分:1)

您应该更改以下行

if ($del_id!=0)

用这个

if ($iid!=0)

因为你要发送

{ iid: del_id } // iid is the variable
来自客户端的

$iid将在$_POST中提供,因此您可以在不extracting的情况下使用完整的$_POST数组

if ($_POST['iid']!=0){...}

此外,如果您不从服务器端回显/打印任何内容,则无法在响应中找回任何内容。