Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中编码/解码html标记_Javascript_Html_Json_Ajax_Nicedit - Fatal编程技术网

在javascript中编码/解码html标记

在javascript中编码/解码html标记,javascript,html,json,ajax,nicedit,Javascript,Html,Json,Ajax,Nicedit,我有一个用nicEdit插件美化的文本区 我需要通过ajax帖子将结果代码发送到我的php服务器。我应该如何转义html标记并在服务器中接收它们 另外,我需要通过另一个ajax调用在另一个网页中显示它们。为了在接收到php后解码它们,我也应该做些什么 这是我尝试过的json: {'title':'srefzgseg','text':'<a href="link_to_page">s</a>drhgrdshgrdghrdgdgrdg<img src="http://w

我有一个用nicEdit插件美化的文本区

我需要通过ajax帖子将结果代码发送到我的php服务器。我应该如何转义html标记并在服务器中接收它们

另外,我需要通过另一个ajax调用在另一个网页中显示它们。为了在接收到php后解码它们,我也应该做些什么

这是我尝试过的json:

{'title':'srefzgseg','text':'<a href="link_to_page">s</a>drhgrdshgrdghrdgdgrdg<img src="http://www.joomlaworks.net/images/demos/galleries/abstract/7.jpg" alt="dgfvsegfseg" align="none">'}

您的JSON无效。JSON中的字符串应该有双引号

如果字符串中也需要双引号,则需要使用反斜杠对其进行转义

但是,与其自己编写解决方案,不如让JavaScript处理JSON序列化,这样您就不会有这个问题:

var o = {};
o.title = $("#titulo").val();
o.text = new nicEditors.findEditor('new_area').getContent();
var jsonNew = JSON.stringify(o);

你为什么要逃离他们?如果您设法输入了它们,您还可以在另一面阅读它们。PHP不会对他们做任何特殊的事情。如果您想在HTML页面中显示HTML源代码,则只需转义标记。如果我的文本中不包含HTML标记,php服务器将接收该文本,在我这样做的时候,我的服务器中不会接收任何内容。另外,如果我尝试使用JSONLINT,json文件的格式也不好。您是在HTML中键入的,还是文本+HTML已经预先填充在文本区域中了?在后一种情况下,将代码输出到文本区域元素时确实需要转义代码。如果你只是输入了它,AJAX失败了,请分享更多细节,比如代码的相关部分以及从JavaScript控制台和PHP日志中得到的任何错误。我用我的函数和json文件的示例更新了我的问题。你是如何构建json的?它使用单引号,这是无效的。不需要字符串化JSON,jQuery可以自动处理它。这很有效。我不知道字符串化方法。非常感谢。VisioN,如果没有stringify,它也会工作吗?是的,如果您只是通过
o
,jQuery应该在屏幕后面对其进行stringify。
var o = {};
o.title = $("#titulo").val();
o.text = new nicEditors.findEditor('new_area').getContent();
var jsonNew = JSON.stringify(o);