0

我正在尝试使 Ajax 页面更有用,其中一些包含 java 脚本可以以某种方式激活 java 脚本,因为到目前为止我没有找到任何可以帮助我的东西:

 <script>
   var d=document.getElementById("foo");
   d.innerHTML="<script type='text/javascript'>alert('yey');</script>";
 </script>

我希望这能提醒我“耶”,但它自然没有任何 idias 吗?请不要查询。

4

2 回答 2

0

您正在尝试的内容将不起作用,因为加载页面时机器上会解释 javascript,因此,当您插入代码时,页面的整个脚本已经被浏览器的 javascript 引擎和您的代码解析在页面上插入被引擎视为纯文本。

在页面刷新之前,代码不会再次发送到引擎,但是当它这样做时,您插入的 javascript 将消失,因为它在页面加载时不存在。

您需要做的是在您的内容上使用某种类型的模板/包含系统。

于 2012-09-27T12:25:07.273 回答
0

我知道了!

var d=document.getElementById("foo");
 d.innerHTML="<script type='text/javascript'>alert('yey');</script>";

startScrypt(d);

function startScrypt(obj) {.
 if (!obj) return;
 var children=obj.childNodes;  
 for (var i in children) 
   if (children[i]){
                       if (children[i].tagName=="SCRIPT") { 
                          if (!children[i].src || children[i].src=="") 
                               window.setTimeout(children[i].innerHTML,0); 
                               else {load_scrit_src(children[i].src);}
                        }   else startScrypt(children[i]);
                   }
} 

那很好……谢谢大家。

于 2012-09-27T12:28:04.007 回答