JSON响应中换行的非法标记
ILLEGAL token for line break in JSON response?
在发送回一些JSON后,JavaScript错误显示:
Uncaught SyntaxError: Unexpected token ILLEGAL
当我用一个换行符字符串来回应时,比如:
{ "call": "myFunction("<ul>↵ <li>Passwords are case-sensitive, that is the lower-case letter '"a'" is diffe...")" }
这是PHP,这是我得到的原始JSON响应。
是的,我do在JSON编码后覆盖一些JSON。我这样做是为了让客户端知道它必须调用一个函数。我会尝试其他选择。
当我发送一个没有换行的响应时,它不会出错如何修复断线我应该把它转换成什么?如何搜索和替换它?调用json_encode()
时是否应该使用特殊标志?
我试过:
$json = str_replace("'r'n", "'n", $json);
$json = str_replace("'r", "'n", $json);
$json = str_replace("'n", "''n", $json);
我可以使用它:
<script>
<?php
$json = '{ "call": "myFunction('''"<ul>
<li>Passwords are case-sensitive, that is the lower-case letter '''"a'''" is diffe...'''")" }';
$json = str_replace("'n", "'''n", $json);
echo "var str = '".$json."';";
?>
document.write(str);
str = JSON.parse(str);
alert(str.call);
</script>
在我的测试中,三重转义换行符n将格式化保留在html中,但允许使用JSON解析字符串。
-C
相关文章:
- 如何在映射数组中添加换行符
- JQuery:向多个匹配结果添加换行符的最简单方法
- 在文本区域中使用jQuery.text()保持换行符
- Internet Explorer中的文本换行错误
- 从Javascript警报中防止换行
- javascript替换换行符和特殊字符
- 换行符拆分返回“”;未定义”;
- javascript中换行的regexp
- 编辑数据库输入时在文本框上换行
- 在 JS 中添加字符串之前强制换行
- 如何使用web浏览器在NoSQL数据中呈现换行符
- 换行符插入jquery选择器
- jquery使用val()复制值似乎可以删除换行符
- 文本区域-获取每一行,找到换行符
- 处理字段中带有换行符的csv文件-node.js
- 使用jquery将单个换行符替换为span元素
- javascript/jQuery:在title中添加换行符——在IE9中有效,但在IE8中无效
- 如何使用javascript换行
- 咖啡脚本意外换行符
- JSON响应中换行的非法标记