在html标记中序列化javascript代码
serialize javascript code inside html tags
我有一个ajax函数,它以html标记的内容作为响应,作为一个json字符串,我将对其进行求值以生成一个对象。
现在,只要json字符串中没有javascript,它就可以正常工作。但是,当我在字符串中包含一些简单的javascript时,当我尝试评估字符串时,我会得到Uncaught SyntaxError: Unexpected identifier
,尽管我会转义每个'
和"
。
以下是示例:http://jsfiddle.net/dCtA3/2/
当我删除javascript时:http://jsfiddle.net/dCtA3/3/它是有效的。
尝试使用正确的JSON(如果您的XHR返回JSON,请使用它,解析它,或者检查浏览器是否还没有为您解析它(应该是[response].innerhtml
))。将jsfiddle代码更改为:
var contents = JSON.stringify(
{innerhtml : "<p onclick='"javascript:alert('hello world');'"> click me! </p>"}
);
function insertContent() {
document.getElementById("container")
.innerHTML = JSON.parse(contents).innerhtml;
}
[根据评论编辑
请参阅这个jsfiddle,其中json请求是在单击按钮时模拟的。单击按钮后会显示字符串化的响应对象。
您需要生成javascript代码吗?它必须在那个字符串中吗?如果javascript可以在您的js文件中,您只需执行以下操作:制作一个函数helloWorld来执行警报,并在json字符串中使用html hance onclick="helloWorld()"。
相关文章:
- 是否可以在javascript中反序列化java对象
- 对象序列化,JAVA,Javascript
- javascript中是否有更标准化的方法来转换(序列化)非表单数据以与ajax一起使用
- 在html标记中序列化javascript代码
- 是否可以在不序列化的情况下将对象从SilverLight传递到JavaScript
- 用于javascript的Hessian序列化库
- 使用 JavaScript 进行反序列化
- 无法序列化javascript数组
- 序列化 JavaScript 数组
- 如何从 .NET 字符串序列化 javascript 函数
- 反序列化 JavaScript 对象实例
- 序列化 Javascript 代码
- 序列化javascript对象并对其进行反序列化
- PHP反序列化Javascript序列化字符串
- 从反序列化Javascript中重命名属性
- 无法正确序列化JavaScript对象
- 制作一个不序列化javascript的一对多表单html
- 如何序列化JavaScript关联数组
- Web API可以't反序列化Javascript Date.toISOString()
- 序列化JavaScript CanvasRenderingContext2D状态数组