2009-08-10 86 views
3

有幾個問題,首先在下面的這個var字符串中,第一個可以工作,但我需要第二個工作,有一個snytax錯誤,因爲我不知道如何寫它簡單的jquery ajax錯誤響應

var string = 'id='+ id ; 
var string = 'id='+ id 'USER=1'; 

第二; 下面這個ajax調用,它發佈delete.php刪除評論,它的工作原理,但我想補充一些錯誤處理。一旦我將它添加到後端,我怎麼能讓它顯示在jQuery中的錯誤?

$.ajax({ 
    type: "POST", 
    url: "delete.php", 
    data: string, 
    cache: false, 
    success: function(){ 
    commentContainer.slideUp('slow', function() {$(this).remove();}); 
    $('#load').fadeOut(); 
    } 

回答

9

你缺少一個連接符和符號,我也不會用「字符串」作爲變量名:

var str = 'id='+ id + '&USER=1'; 

這就是說,「串」不是JS reserved word,但似乎仍然是不好的做法(至少對我來說)。

你所傳遞的「弦」變量$阿賈克斯是一個查詢字符串,我建議閱讀本以獲取更多信息:

http://en.wikipedia.org/wiki/Query_string

關於你提到的錯誤處理的問題,一個辦法是檢查響應文本的東西,並採取相應措施,如:

$.ajax({ 
    type: "POST", 
    url: "delete.php", 
    data: string, 
    cache: false, 
    success: function(resp){ 
    if(resp == 'error') { //get PHP to echo the string 'error' if something bad happened 
     alert('There was an error!'); 
    } else { 
     commentContainer.slideUp('slow', function() { 
      $(this).remove(); 
     }); 
     $('#load').fadeOut(); 
    } 
    } 
    }); 
+0

,看起來像它的工作完美,我送1個錯誤權現在雖然缺少}屬性列表後,這裏是什麼是錯誤=}); – JasonDavis 2009-08-11 00:07:13

+0

@jasondavis - 成功封鎖沒有正確關閉 - 我編輯過了,請再試一次。 – karim79 2009-08-11 00:14:38

+0

現在明白了,謝謝! – JasonDavis 2009-08-11 00:17:28

0

對於第二個問題,你的意思是在服務器端代碼中的HTTP錯誤或錯誤?

如果你的意思是一個HTTP錯誤,就像「成功」有一個「錯誤」,它可以被稱爲

請參閱該文檔here

+0

我的意思是我自己的錯誤,就像一個用戶在x時間內發佈了很多評論一樣,我想將一個錯誤代碼發回jquery到瀏覽器來顯示一條消息,而不是返回成功 – JasonDavis 2009-08-10 23:41:59