-2

我正在使用 jQuery ajax 将更新从客户端的浏览器发送到我的服务器,
我注意到有一些 JSON 不支持的字符,
为了发送它们,我需要在每个字符前面添加额外的 \。

这些字符在 json.com 上有很好的记录:

json字符串
(来源:json.org

我不太擅长 javascripting(我是这个领域的新手),
所以我想知道是否有任何已经制作的函数需要一个字符串并对其进行格式化以适应这个要求?

iv'e 搜索了网络,但找不到任何 javascript 解决方案。

在此先感谢,艾坦。

4

1 回答 1

0

解决了!我在这个@$ 上花了太多时间!

我发现 JSON.stringify 确实处理了特殊字符。
问题在于我用来构建数据的方式......
我这样做了:

blah = JSON.stringify( { a: "1" } );
$.ajax({
         type: "POST",
         url: "page.aspx/MethodName",
         data: "{ paramName: '" + blah + "'}",
         contentType: "application/json; charset=utf-8",
         dataType: "json"});

为了解决这个问题,我刚刚做了:

//nesting the param name in the data structure passed to stringify:
blah = JSON.stringify( { paramName : { a: "1" } } ); 
    $.ajax({
             type: "POST",
             url: "page.aspx/MethodName",
             data: blah,
             contentType: "application/json; charset=utf-8",
             dataType: "json"});

感谢所有试图帮助我解决这个问题的人..

于 2012-09-11T20:16:58.547 回答