我在html中有一个字符串,应该在帖子中加载。
var str = new String("<span>Hello</span><script>window.alert('hello');</script>");
document.getElementsByTagName('body')[0].innerHTML=str;
但警报未到来。所以我补充说:
for(i=0;scr=document.getElementsByTagName('body')[0].getElementsByTagName('script')[i];i++) {
eval(src.innerHTML);
};
但即使它不起作用。你可以解决我的问题吗?
答案 0 :(得分:0)
document.getElementsByTagName('body')[0].innerHTML="<span>Hello</span><script>window.alert('hello');<\/script>";
var alert_func = document.getElementsByTagName('script')[0].innerHTML
if(alert_func.indexOf("alert") != -1) {
eval(alert_func);
}
此代码首先将<body>
代码的innerHTML设置为<span>Hello</span><script>window.alert('hello');</script>
。然后,变量alert_func
会将内容存储在<script>
标记之间。如果alert_func
中有“alert”字样,我们会评估<script>
代码之间的任何内容并发出提醒。