<script>
document.write("
<td id='test' name='test' align='center' width='102'>hello<script src='test.js'></script></td>
")
</script>test.innerHTML = "<img  align=middle src='Star1.gif' border='0'>";
试试行不行

解决方案 »

  1.   

    谢谢小灰,明白你的意思,的确是一个解决方法。但是因为test.js其实是动态生成的很多个js脚本(为了方便举例,test.js是其中一个),项目别的地方也要用,所以我不能去修改生成这些脚本的逻辑我现在是把test.js当成文本文件读,把 <img  align=middle src='Star1.gif' border='0'> 当成一个字符串来处理,然后在里document.write面输出来的
      

  2.   

    <script>
    document.write("
    <td align='center' width='102'>hello<script src='test.js'></script><script>test.print();</script></td>
    ")
    </script>例如test.js的内容为:function test(){};
    test.print=function(){
        document.write("<img  align=middle src='Star1.gif' border='0'>")
    }
      

  3.   

    谢谢楼上,俺试了,不行喔。
    另外,强调一下test.js是别的地方生成的 不能改
      

  4.   

    不会啊,你试试这个
    file1
    =========================
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    </head><body>
    <div>First one</div>
    <script>document.write("<div>MIDDLEd<script src='tt.js'><\/script></div>");</script>
    <div>second one</div>
    </body>
    </html>
    tt.js
    ==========================
    document.write("I'm from js");
      

  5.   

    <script>
    document.write("
    <td align='center' width='102'>hello")
    </script>
    <script src='test.js'></script>
    <script>test.print();</script>
    <script>
    document.write("</td>
    ")
    </script>这样行不行
      

  6.   

    <script>
    document.write("
    <td align='center' width='102'>hello")
    <script src='test.js'></script>
    <script>
    document.write("</td>
    ")
    </script>
      

  7.   

    <script>
    document.write("
    <td align='center' width='102'>hello")
    </script>
    <script src='test.js'></script>
    <script>
    document.write("</td>
    ")
    </script>晕,贴2次都没贴对
      

  8.   

    to Taciterry(Less is more.) : 
    我试了你的,没问题。 但是换成<td>好像还是不行。to 独角兽:
    嗯 你的方法也可以,因为把整个脚本拆开输出了,所以也不涉及到脚本里面又嵌套一个脚本的问题了。总结一下吧,单就这个问题,我们可以找到很多work aroud的方法。但是其根本,也是我想问的是:浏览器对javascript的解释执行原理,当一个脚本的document.write输出里面又包含<script>标记,那么这段脚本不会在所在的地方被解释执行,而是跑到整个html的后面或者前面了。因为刚开始学习不久,所以不是很了解,谢谢各位的帮助。