读书人

JS onclick函数在FireFox中可以在IE

发布时间: 2012-06-20 20:37:21 作者: rapoo

JS onclick函数在FireFox中可以,在IE中不行,请教!
大家好!有个问题请教大家!
代码如下!

JScript code
<html><body>    <script type="text/javascript">        var ColSave = new Array();        function StartPainTable()        {            /**********************显示TOKEN中的内容**********************************/          document.write('<TokTagControl id=tokControl>');        document.write('<a href="#self">');          document.write('[+]');          document.write('</a>');          document.write('</TokTagControl>');            //绘制ResultTable完毕            /**********************显示Report中的内容**********************************/      }        window.onload = function()         {             StartPainTable();        //    var TokenTag = document.getElementById("tokControl");              var TokenTag = document.getElementsByTagName("TokTagControl");              var len = TokenTag.length;            for(var i=0;i<len;i++)            {                                TokenTag[i].i = i;                TokenTag[i].onclick = function()                 {                    document.write("Token Click Enter");                            document.write(this.i);                            document.write('<br/>');;                }          }        }    </script></body></html>            


就是这段代码在火狐与谷歌浏览器中,运行没有问题,点击 [+] 会有响应,但是在IE中却不可以,请问为什么呢?谢谢大家了

[解决办法]
不要使用document.write()方法输出html代码,在触发window.onload事件时,文档流已经关闭了,此时再调用write()方法就会创建新的文档流。你在IE下浏览器后查看源代码就知道原因了。

用DOM方法更新文档结构吧。

读书人网 >JavaScript

热点推荐