2011-08-07 48 views
0

我有這個jQuery的Javascript代碼:獲取阿賈克斯不工作的數據

$(document).ready(function(){ 
    $("#check_button").click(function(){ 
     $.ajax({ 
      url: "includes/adcontent.php", 
      type: "GET", 
      data: "id=<?php echo $id; ?>", 
      async: false, 
      cache: false, 
      beforeSend: function (data) { 
        $('#check_quest_button_div').html("<img src='/images/icons/loading.gif' title='Please wait' alt='Please wait' />"); 
      } 
     }); 
    }); 
}); 

這是我的PHP代碼中包含/ adcontent.php:

if (!isset($id) && isset($_GET['id'])){ 
    $id=htmlspecialchars(strip_tags($_GET['id'])); 
} 
echo $id; 

但有了這個代碼,我有一個錯誤信息。該腳本不會發送GET數據。問題是什麼?

+0

不要將它作爲數據傳遞,將它作爲查詢參數傳遞(在include/adcontent.php之後添加'?id = <?php echo $ id;?>' – tjameson

+0

這不起作用:-( – Jordy

+0

你能Wireshark的,並確保該請求被髮 – tjameson

回答

0

試試這個

$(document).ready(function(){ 
    $("#check_button").click(function(){ 
     $.ajax({ 
      url: "includes/adcontent.php?id=<?php echo $id; ?>", 
      type: "GET", 
      async: false, 
      cache: false, 
      beforeSend: function (data) { 
        $('#check_quest_button_div').html("<img src='/images/icons/loading.gif' title='Please wait' alt='Please wait' />"); 
      } 
     }); 
    }); 
}); 
+0

不,這不起作用:-( – Jordy

+0

@Jordy--你是否至少看到請求經過? – ShankarSangoli

+0

是的,請求是好的,如果我把代碼回顯爲「OK」,我可以看到它 – Jordy

0

您是否嘗試過這樣的:

$.ajax({ 
    url: "includes/adcontent.php?id=<?php echo $id; ?>", 
    type: "GET", 
    async: false, 
    cache: false, 
    beforeSend: function (data) { 
     $('#check_quest_button_div').html("<img src='/images/icons/loading.gif' title='Please wait' alt='Please wait' />"); 
    }, 
    success: function (data) { 
     alert(data); 
    } 
}); 

你看到警報?

+0

是的,我看到正確的變量的警報。很奇怪,因爲如果我用我的代碼替換你的'成功代碼',它就不起作用。 – Jordy

+0

然後這個代碼可能有錯誤。我也改變了你如何發送數據到服務器,所以這也會做到這一點。我將它們作爲查詢字符串發送,您將它們作爲正文數據發送,根據規範,GET請求中不允許發送它們。 – tjameson

+0

那麼,我有解決方案。我還應該使用?id = <?php echo $ id;來更改.load()代碼。 ?>。是我的錯。對不起,但非常感謝您的幫助! – Jordy