a.htm
<script>
document.write("<table><tr><td>· 第一行</td></tr><tr><td valign=top id=t>");
document.write('<script language=javascript src=b.js></s'+'cript>');
document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
</script>b.js
document.getElementById('t').innerHTML='我应该在第一行和第二行中间呀?';

解决方案 »

  1.   

    我不知道你这样写的目的,如果仅仅是写入一行内容,怎么不可以只在b.js中定义一个变量,通过调整程序结构一样可以获得你所要的效果。
    比如:
    a.htm
    <script language=javascript src=b.js></script>
    <script>
    document.write("<table><tr><td>· 第一行</td></tr><tr><td valign=top id=t>");
    document.write(b_js_show);
    document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
    </script>b.js
    var b_js_show="我应该在第一行和第二行中间呀?";
      

  2.   

    你应当这样写
    <script>
    document.write("<table border><tr><td>· 第一行</td></tr><tr><td valign=top>");
    </script>
    <script src=b.js></script>
    <script>
    document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
    </script>
      

  3.   

    不建议你在document.write里套用document.write输出内容。定位是个问题。
      

  4.   

    to  xdspower() net_lover(孟子E章)  谢谢你们的方法,但还不是我要的效果,我要的还是通过应用双重嵌套,达到预期效果的办法。to  vivianfdlpw()  你的方法有点接近我想要的想法了,但我改写一下又不可以了,请问为什么,能否帮忙解决?<script>
    document.write("<table><tr><td>· 第一行</td></tr><tr><td valign=top id=t>");
    document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
    document.getElementById('t').innerHTML='<script language=javascript src=b.js defer></s'+'cript>';
    </script>
      

  5.   

    按你的意思b.js的内容一定是:
        document.write("我应该在第一行和第二行中间呀?");
    吧?怎么会有这样奇怪的要求?我想你还是可以再理一下思路。
      

  6.   

    业务原型是:1、某栏目内容列表显示样式设置后,生成JS源码,即<script src=contentlist.js> 该段源码也已入库。注:用户可直接COPY<script src=xx.js>放置内容列表,方便用户调用。2、内容栏目列表 显示样式设置后,也生成JS源码,即<script src=sortlist.js>
    如内容栏目列表显示样式中设置需要也显示该栏目内容列表,则需要嵌套调用<script src=contentlist.js>故产生以上问题。如解决该问题,则可实现aaaa  *a内容
      *a内容
      *a内容
      *a内容bbbb
      *b内容
      *b内容
      *b内容
      *b内容
      

  7.   

    不要用document.write()
    使用document.writeLn()===============================================
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    <script language="javascript">
    function hello() {
    document.writeln("sss");
    }
    </script>
    </HEAD><BODY>
    <pre>
    sdfdfsd
    ds
    f
    <script>hello()</script>
    sd
    dsfsd
    fds
    fd
    fds
    fdsf
    dsfdsf
    dsf
    dsf
    ds
    fsdf
    sf
    </pre>
    </BODY>
    </HTML>
      

  8.   

    a.html:
    =================================
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <pre>
    <script>document.writeln("aaa");</script>
    <script>
    document.write("<script language='javascript' src='b.js'></s"+"cript>");
    </script>
    <script>document.writeln("bbb");</script>
    </pre>
    </BODY>
    </HTML>
    ======================================
    b.js:document.writeln("sss");
      

  9.   

    分开写:<script>
    document.writeln("<table border=1><tr><td>&#12539; 第一行</td></tr><tr><td>");</script>
    <script>
    document.write("<script language='javascript' src='b.js'></s"+"cript>");
    </script>
    <script>document.writeln("</td></tr><tr><td>&#12539; 第二行</td></tr></table>");</script>
      

  10.   

    <script>
    document.write("<script>document.write('<table><tr><td>· 第一行</td></tr><tr><td valign=top>')</s"+"cript>");
    document.write('<script language=javascript src=b.js></s'+'cript>');
    document.write("<script>document.write('</td></tr><tr><td>· 第二行</td></tr></table>')</s"+"cript>");
    </script>这种方式为什么也不行??不是同一级别的吗?
      

  11.   

    问一下,你的b.js的代码是不是可以随意控制??若可以控制则好办。
    a.htm 源代码不变,在b.js里这样写:var a = document.getElementsByTagName("SCRIPT");
    var s = a[a.length-1];
    s.parentNode.innerHTML = "我应该在第一行和第二行中间呀???";
      

  12.   

    其实你的业务初步是想通过客户端来完成页面信息的组合,但从逻辑来说你完全可以在服务器端就完成组合,这样业务中 某栏目内容列表显示样式设置 部分就不会是<script src=contentlist.js>,而是具体的内容入库,即你服务器返回给客户的可以看成一个包含一些控制的静态页面(主要的显示是静态的内容),这些要求利用服务器端的程序是比较容易完成。
      

  13.   

    to meizz(梅花雪)  一个是好办,如果多个好像不顶用呀? 只显示一个?
    <script>
    document.write("<table><tr><td>· 第一行</td></tr><tr><td valign=top>");
    document.write('<script language=javascript src=bb.js></s'+'cript>');
    document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
    document.write("<table><tr><td>· 第一行</td></tr><tr><td valign=top>");
    document.write('<script language=javascript src=cc.js></s'+'cript>');
    document.write("</td></tr><tr><td>· 第二行</td></tr></table>");
    </script>to xdspower()  某栏目内容列表如果是具体的内容入库则就不能实时更新内容列表了。灵活性会差些。
      

  14.   

    b.js:
    var a = document.getElementsByTagName("SCRIPT");
    for(var i=0; i<a.length; i++)
    {
        if(a[i].src.toLowerCase()=="b.js")
        {
            a[i].parentNode.innerHTML = "b.js我应该在第一行和第二行中间呀???";
        }
    }c.js:
    var a = document.getElementsByTagName("SCRIPT");
    for(var i=0; i<a.length; i++)
    {
        if(a[i].src.toLowerCase()=="c.js")
        {
            a[i].parentNode.innerHTML = "c.js我应该在第一行和第二行中间呀???";
        }
    }
      

  15.   

    把上面的代码再完美一下: b.js :
    var a = document.getElementsByTagName("SCRIPT");
    for(var i=0; i<a.length; i++)
    {
        if(a[i].src.substr(a[i].src.lastIndexOf("/")+1).toLowerCase()=="b.js")
        {
            a[i].parentNode.innerHTML = "b.js我应该在第一行和第二行中间呀???";
            break;
        }
    }
      

  16.   

    to xdspower() 某栏目内容列表如果是具体的内容入库则就不能实时更新内容列表了。灵活性会差些。?
    怎么会呢,只要你的库在更新,生成的内容就可以更新啊,而且你的方法也不是实时的更新内容列表啊。