2012-08-06 150 views
0

此代碼不斷拋出一個「意外的標記」的錯誤,但我無法弄清楚什麼是錯的任何線索將是巨大的這個jQuery語法有什麼問題?

function addComment() { 
    $.ajax({ 
     url:'/add/comment/id', 
     type:'POST', 
     data.JSON.stringify({'Text':$('#comment_text').val()}), 
     contentType:'application/json; charset=utf8', 
     processData:false, 
     success:function(data){ 
      $('#comments').prepend(data.comment.Text); 
     } 
    }); 
} 
+0

數據:JSON.stringify({ '文本':$( '#COMMENT_TEXT')VAL()}), – 2012-08-06 01:50:05

+0

哦,這是令人尷尬的。謝謝。 – MFB 2012-08-06 01:51:12

回答

3
data: JSON.stringify({'Text':$('#comment_text').val()}), 
2
data.JSON.stringify({'Text':$('#comment_text').val()}) 

應該是:。

data: JSON.stringify({'Text':$('#comment_text').val()}) 
+0

嗯也許它確實..我會檢查出來..謝謝。 – MFB 2012-08-06 01:52:31

+2

@MFB數據可以是一個對象或字符串。 http://api.jquery.com/jQuery.ajax/最好讓jQuery做JSON,因爲不是所有的瀏覽器都有原生的'JSON.stringify'支持 – 2012-08-06 01:54:41

+0

謝謝Cameron,很棒的提示 – MFB 2012-08-06 02:09:57

5

問題是在這條線:

data.JSON.stringify({'Text':$('#comment_text').val()}), 

的意外的標記是週期(在data之後。

不是句點(.),你data後需要一個冒號(:),像這樣:

data: JSON.stringify({'Text':$('#comment_text').val()}), 

注意你不需要JSON.stringify這裏。正如@pst指出的那樣,jQuery無論如何都會爲你做到這一點。

data: { 
    'Text': $('#comment_text').val() 
},