例如:
<html>
<div id="media">123</div>
<a href="javascript:void(0)" onClick="return fun()">Click</a>
<script type="text/javascript">
function fun() {
document.getElementById("media").innerHTML = '<script type="text/javascript">alert("working");<\/script>';
}
</script>
</html>
单击警报后不显示。
alert("working")
;只是一个例子。我想让它完成一个工作其他JavaScript
。我有一个工作要通过ajax处理应该使用innerHTML
答案 0 :(得分:6)
HTML spec指定不应执行使用innerHTML插入的脚本标记。这是一个安全考虑因素。
如果您已确定,仍有办法执行此操作,例如将其添加到img
处理程序或创建脚本元素,将其插入DOM并更改其text
属性。我不会详细说明这些,因为这样做通常被认为有些粗略。如果您不想尝试注入脚本,则应该在页面源中包含脚本元素。
答案 1 :(得分:1)
<script type="text/javascript">
function fun() {
alert("working");
}
</script>
<div id="media">123</div> <a href="javascript:void(0)" onClick="fun();">Click</a>
答案 2 :(得分:0)
你的JS功能应该是这样的。
function fun() {
alert("working");
}