这个jQuery语法有什么问题?

时间:2012-08-06 01:47:24

标签: jquery ajax syntax

此代码不断抛出“意外令牌”错误,但我无法弄清楚它有什么问题。任何线索都会很棒。

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);
        }
    });
}

3 个答案:

答案 0 :(得分: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()
},

答案 1 :(得分:3)

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

答案 2 :(得分:2)

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

应该是:

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