2013-10-04 21 views
0

這裏不工作是我的代碼:Ajax調用將數據發送到另一頁

<div class="category" id="<?php echo $cat->term_id; ?>"><?php echo $cat->cat_name; ?> </div> 


$(".category").click(function(){ 

      var categ = $(this).attr('id'); 
           alert(categ); 


    ajax({ 
    type:'POST', 
    url:'http://myweb.com/rel_notes/?page_id=238', 
    data:'cat='+categ, 
    success:function(data) { 
    if(data) { 


    } else { // DO SOMETHING 
    } 
     } 
});  

    }); 

和正在接收發布的數據(http://myweb.com//rel_notes/?page_id=238)的頁面背後的代碼是在這裏:

<?php 
if (isset($_POST['cat'])) 
{ 
$cat_id = $_POST['cat']; 
echo "<script>alert('$cat_id')</script>"; 
} 
else 
$cat_id = NULL; 
?> 

問題:它沒有得到$ cat_id中的值。我嘗試將$ _POST更改爲$ _GET,但那不起作用。所以,請好心幫助我,我錯過了什麼?

+1

代碼是吧'AJAX({...})'或'$阿賈克斯( {...})'?錯過我猜! –

+0

ops我的錯誤,但仍然沒有工作:/ –

回答

1

這不是好方法。 沒有人可以在服務器端進行警報。

您正在做服務器端的警報代碼。

只需更換

<?php 
if (isset($_POST['cat'])) 
{ 
$cat_id = $_POST['cat']; 
echo "<script>alert('$cat_id')</script>"; 
} 
else $cat_id = NULL; 
?> 

通過

<?php 
if (isset($_POST['cat'])) 
{ 
    echo $cat_id = $_POST['cat']; 

} 
else { 
    echo $cat_id = ""; 
} 
?> 

,並提醒像

$(".category").click(function(){ 
    var categ = $(this).attr('id'); 
    alert(categ); 

    ajax({ 
     type:'POST', 
     url:'http://myweb.com/rel_notes/?page_id=238', 
     data:'cat='+categ, 
     success:function(data) { 
     if(data != "") { 
      alert(data); 
     }else { // DO SOMETHING 

     } 
     } 
    });  

}); 
+0

非常感謝你,它的作品! –

2
$.ajax({ 
    type:'POST', 
    data: {cat: categ}, 
    url:'http://myweb.com//rel_notes/?page_id=238', 
    error: function() { 
     alert("Data Error"); 
    }, 
    success:function(data) { 
    if(data) { 
    } else { 
    } 
} 

});