ajax返回innerHTML中javascript的问题,在IE中在javascript加个defer就可以了,在firefox就不行,有什么办法可以解决吗,,急,,,

解决方案 »

  1.   

    返回的全部是js代码吗?eval()
      

  2.   

    如何能在 firefox 中实现 IE 中的 defer ?
      

  3.   

    Response.Write("<div id=x></div><script type=\"text/javascript\" defer>setTimeout('document.getElementById(\"x\").innerHTML+=\"" + k.ToString() + "\"+\"<br/>\"',1000)\n"<script>");
    这个代码在IE中可以返回,在Firefox下却不行
      

  4.   

    不能那么写。需要把js和html分开
      

  5.   

                     document.getElementById('ID').innerHTML = xmlHttp.responseText;
                     //执行脚本
                        if (需要执行脚本)
                      {
                            var str = xmlHttp.responseText;
                            var patt = /<script[^>].*?>([\s\S]*?)<\/script>/ig;
                            var result;
                            while ((result = patt.exec(str)) != null)  
                            {
                              eval(RegExp.$1);
                            }
                      }
    写在onreadystatechange函数里
      

  6.   


    这种Response.Write 输出 可以定位吗? 用一个hidden+一个赋值的js解决
      

  7.   

    http://www.pjhome.net/article.asp?id=585
    看这里
      

  8.   

    <div id=x></div>直接写到页面中,别放到write里
      

  9.   

    Response.Write("<div id=x></div><script type=\"text/javascript\" defer>setTimeout('document.getElementById(\"x\").innerHTML+=\"" + k.ToString() + "\"+\"<br/>\"',1000)\n"<script>");
     我以前遇到过 
    Response.Write("<div id=x></div><script type='text/javascript'>setTimeout('document.getElementById(\"x\").innerHTML+=\"" + k.ToString() + "\"+\"<br/>\"',1000)\n"<" + "script>");