有3个文件a.asp、b.asp、c.asp现在a.htm里有个JS脚本是这样的:<script language="javascript" src="b.asp"></script>然后在b.asp文件里有个一样的脚本链接:<script language="javascript" src="c.asp"></script>我试了一下,如果直接打开b.asp是可以正常运行的,并且链接的c.asp也正常,但是如果打开a.asp的话,链接的b.asp正常,而c.asp好像根本没执行在b.asp里也有其他JS脚本,如:<script language="javascript">document.getElementById('text1').value = 'ok';</script>这段脚本从a.asp链接过去是要执行的,那为什么就不可以再src第三个文件呢?
不可以 你只有在a.asp里<script language="javascript" src="b.asp"></script> <script language="javascript" src="c.asp"></script>调用两次因为在js文件里是不支持<scirpt>标签的,当然你就不可以再引用了.javascript的代码规范,脚本必须是存在于 <script>与</script>标记之间的.若b.asp里有代码 alert("holle!");而<script language="javascript" src="b.asp"></script> 这样的写法会等于<script language="javascript">alert("holle!");</script>若你在b.asp里加入<script language="javascript" src="c.asp"></script>这样在a.asp页面中的代码实际上是:<script language="javascript">alert("holle!");<script language="javascript" src="c.asp"></script></script>这样,当然就会报错了
首先在作为被引用的文件的输出格式应该是js的语法。如果想在该文件中再引用别的js应该是:document.writeln('<script language="javascript" src="c.js"></script>');而不是html语法的:<script language="javascript" src="c.js"></script>而且你的b.asp中输出的语法也不对。要把你的script标签去掉,直接输出:document.getElementById('text1').value = 'ok';