返回JSON jquery - 意外的令牌w

时间:2013-07-04 00:47:11

标签: jquery

我在jquery中有这个,当我点击链接时显示数据。

首先我使用链接并使用ajax来调用函数

    var $itemEl = this.$item.children( 'a' ),
        eldata = {
            link: $itemEl.data('link')
        };

    var self = this;
    $.ajax({
        url: eldata.link,
        success: function(data){
            self.updateData(jQuery.parseJSON(data));
        }
    });

我返回一个JSON数据,现在创建一个对象来显示数据 我返回此数据

<?php
echo  json_encode($this->items);
?>

但是我得到了这个错误

Uncaught SyntaxError: Unexpected token w jquery.min.js:2
p.extend.parseJSON jquery.min.js:2
$.ajax.success grid.js:471
k jquery.min.js:2
l.fireWith jquery.min.js:2
y jquery.min.js:2
send.d

我不知道!有什么建议吗?

1 个答案:

答案 0 :(得分:1)

$.ajax function会自动为您解析JSON,因此data已成为JS对象。试图解析这将导致其字符串化和无效的JSON。而是直接将data传递给您的updateData方法:

$.ajax({
    url: this.$item.children('a').data('link'),
    dataType: 'json',
    success: $.proxy(this, 'updateData')
});