Kei*_* L. 0 javascript jquery json special-characters
我用jquery和json保存了一个文本.
我正在使用.text()获取textarea的文本并使用json保存它.除\和'之外的所有特殊字符都会被保存.
如果我尝试保存%&$§/////blaääüü**´~+它的工作,但如果我尝试保存
%&$§/////blaääüü**´~+\\\\\\\'''''它不起作用!
我怎么解决这个问题?
编辑
保存的代码是:( 提取)
$.ajax({
url: "myURI"
, type: "POST"
, dataType: "json"
, data:
"{ " +
"', 'text': '" + $('#myText').text() +
"' }"
, contentType: "application/json; charset=utf-8";
});
Run Code Online (Sandbox Code Playgroud)
好的,您的主要问题是您创建的JSON无效并且您"手动"创建它.字符串连接的结果是:
{ ', 'text': '%&$§/////blaääüü**´~+\\\'''''' }
Run Code Online (Sandbox Code Playgroud)
这看起来并不像JSON.
使用JSON.stringify [MDN](也可使用外部库):
data: JSON.stringify({text: $('#myText').text()})
Run Code Online (Sandbox Code Playgroud)
其他问题:
JSON中的键必须是双引号,而不是单引号.
文本包含转义字符(\)和单引号(')的事实会与您创建的最终字符串混淆.这就是为什么你应该将内容和创建正确地转移到浏览器.
根据您使用的服务器端语言,您应该将JSON分配给密钥,以便将正确的键值对发送到服务器:
data: {json: JSON.stringify(...)}
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
243 次 |
| 最近记录: |