2011-03-02 74 views
0

我正在使用PHP腳本通過$ _GET等待兩個值。

我想通過這些2值使用jQuery,這就是我不太擅長的地方。

這是我得到的代碼。

有人可以指出我正確的方向嗎?謝謝 !

function xrate(id,rating){ 

    $.ajax({ 
     url: "ajax_xrate.php?id="+id+"&rate="+rating, 
     global: false, 
     type: "GET", 
     dataType: "text", 
     async:false, 
     success: function(){ 
     alert('Bravo!'); 
     } 
    }); 

} 

(從註釋複製的實際代碼)

function xrate(id,rating){ 
    var oDate = new Date(); 
    $.ajaxSetup({ cache: false }); 
    $.ajaxSetup({ 
     scriptCharset: "utf-8" , 
     contentType: "application/x-www-form-urlencoded; charset=UTF-8" 
    }); 
    $.ajax({ 
     url: 'ajax_xrate.php?timestamp='+oDate.getMilliseconds(), 
     dataType: 'html', 
     data: {itemid:id, keyrate:rating}, 
     cache: false, 
     type: "GET", 
     success : function(dataReturn){ 
      alert(dataReturn); 
     } 
    }); 
} 
+0

http://api.jquery.com/jQuery.ajax/ – 2011-03-02 18:34:29

+0

究竟發生了什麼?你有問題嗎?我的猜測會是參數編碼問題(而'async:false'是一個壞主意)。 – 2011-03-02 18:39:26

+0

我的代碼實際上是這樣的: 'function xrate(id,rating){ \t var oDate = new Date(); \t \t $ .ajaxSetup({ \t \t緩存:假 \t \t}); \t \t \t \t $ .ajaxSetup({scriptCharset:「utf-8」,contentType:「application/x-www-form-urlencoded; charset = UTF-8」}); \t \t \t \t $阿賈克斯({\t \t \t網址: '?ajax_xrate.php時間戳=' + oDate.getMilliseconds(), \t \t數據類型: 'HTML', \t \t數據:{爲itemid:ID ,keyrate:評級}, \t \t緩存:假的, \t \t類型: 「GET」, \t \t成功:函數(dataReturn){ \t \t \t \t alert(dataReturn); \t \t} \t}); }' 在此另一邊,我與 呼應值'$的print_r($ _ GET);' 但我沒有得到任何迴應... – Alex 2011-03-02 20:11:32

回答

2
function xrate(id,rating){ 

    $.ajax({ 
     url: "ajax_xrate.php", 
     data: { 
      id: id, 
      rate:rating 
     }, 
     type: "GET", 
     success: function(){ 
     alert('Bravo!'); 
     } 
    }); 

} 
+0

嗨hsz,感謝您的快速回答!雖然我很確定你的回答是正確的,但我似乎無法使其工作。 我應該如何獲取PHP腳本中的值? $ id_value = $ _GET ['id']; $ rate_value = $ GET ['rate']; 這是正確的嗎?另外,如何在我的PHP腳本中使用「回聲」來幫助調試,並查看結果出現在網頁中? – Alex 2011-03-02 19:55:53

+0

@ user641747:獲取您提到的值是正確的。要在網頁中進行調試,儘管我不推薦它。你使用'success:function(text){//使用文本參數來查看任何報告} – einstein 2011-03-02 20:13:11

1

你可以這樣做:

function xrate(id,rating){ 

    $.get("ajax_xrate.php", 
     { 
      'id': id, 
      'rate': rating 
     }, 
    function(){ 
     alert('Bravo!') 
    } 
); 

} 
0
jquery.ajax work like this 

jQuery.ajax({ 
    url:'you_ur', 
    type:'GET' or 'POST', 
    data:{prop1:value1}, // name value pair of props waiting on server 
    //etc etc here 
}); 

http://api.jquery.com/jQuery.ajax/

0
function xrate(id,rating){ 

    $.ajax({ 
      url: "ajax_xrate.php", 
      data: "id="+id+"&rate="+rating, 
      async:false, 
      success: function(){ 
      alert('Bravo!'); 
      } 
    }); 

} 

您不需要像type = 'get'這樣的設置參數,因爲它們已經是默認設置。每個參數都應以字符串形式(如上面的形式)或對象形式({id: '45', rate: 'something'})在data:中輸入。異步在默認情況下也是如此,以防您不知道