【发布时间】:2017-06-16 15:02:46
【问题描述】:
当我给他一个这样的 JSON 字符串 (java) 时,我遇到了 jQuery 解析器的问题:
String JSONvalue = "[{"evaluationId":92688,"ResponseId":378501,"comment":"I can't do this ~!@#$%^&*()_+|}{\":?><\/.,;'[]\\=-0987654321`","rankingId":0}]";
当我将它传递给解析器(javascript)时,它看起来像这样:
var prevCommentsAndRankings = jQuery.parseJSON('[{"evaluationId":92688,"ResponseId":378501,"comment":"I can't do this ~!@#$%^&*()_+|}{\":?><\/.,;'[]\\=-0987654321`","rankingId":0}]');
我收到无效标记的错误,这是因为 JSON 字符串上的 ' " 和 [ ]。我该如何处理它们,考虑到 JSON 中可能总是包含特殊字符。提前致谢!
【问题讨论】:
-
你没有转义字符串中需要转义的字符
-
不要自己构建 JSON。使用
JSONArray和JSONObject -
这是
JS部分的正确转义字符串:'[{"evaluationId": 92688, "ResponseId": 378501, "comment": "I can\'t do this ~!@#$%^&*()_+|}{\\":?><\/.,;\'[]\=-0987654321`", "rankingId":0}]' -
感谢您的反馈,'" 和 \ 内部有问题,正确转义他们工作!
标签: javascript java jquery json