这可能是一个琐碎的问题,但过去几天来我一直在寻找解决方案。我正在像这样进行ajax调用:

 $.ajax({
    type: 'GET',
    url: "results",
    dataType: 'json',
})
.fail( function (jqXHR, textStatus, errorThrown){
    alert(errorThrown);
    })
    .done(function(data){
        $.each(data.myitems, function(index, item){
          // do stuff here
        });
    });


我的json看起来像这样:

{
"thisvariable":1,
"anothervariable":2,
    "myitems":[
        {"name":"Matt",
        "birthday":"1978-02-23 00:00:00"},
        {"name":"Carol\y",
        "birthday":"1967-05-05 00:00:00"},
        {"name":"Bob",
        "birthday":"1984-02-03 00:00:00"}
        ]
}


进行此调用时,我收到“ SyntaxError:意外令牌y”。它不喜欢Carol \ y中的反斜线。此数据来自mysql数据库。

最佳答案

无论在服务器端创建JSON,都应正确转义反斜杠:Carol\\y

如果您无法控制JSON的创建方式,也许可以拦截它,并在将'\'出现在'\\'之前,将其替换回客户端。

关于jquery - jQuery“SyntaxError:意外 token y”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12547653/

10-12 13:01
查看更多