毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> WEB开发 >> 正文

js嵌套js undefined

更新时间:2012-8-24:  来源:毕业论文

html代码:

HTML code<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>a</title>
</head>

<body>
<script language="javascript" src="1.js"></script>
</body>
</html>

1.js

JScript codevar c;
document.write("<script src=\"2.js\" language=\"javascript\"><\/script>");
document.write(c);

2.js

JScript codec = "aaa";

显示的结果却是:undefined 
该怎么写啊?
搜索他们讲的方法基本上都试过
作用域的问题吧 c在1.js中定义的话 在2.js中赋值的话 1.js中的c 不变吧 如果给1.js中的c初始化的话 就不会报undefined了吧

你那个是异步了,会有浏览器兼容问题的,
document.write(my_a_id);这句执行的时候,2.js还没加载完毕,你可以在window.onload或者自己加个回调处理

如果想让1.js中的变量获取2.js的赋值 需要把my_a_id定义为全局变量 在html 中进行定义,在html文件中加入<script language="javascript">var my_a_id = "";</script>,2.js中my_a_id = "aaa";尽量少用 document.write

动态导入js:

// 动态导入js
function include(src,encoding,fun) 

  var s = document.createElement('script');  
  s.type='text/javascript';
  s.charset=encoding; //'gb2312';
  s.src = src;  
  var tags =document.getElementsByTagName('head');  
  if(typeof(fun)=='function'){
  if( document.all ){
  s.onreadystatechange = function(){
  if(/(complete|loaded)/.test(this.readyState)){
  fun(); s.onreadystatechange = null; s.parentNode.removeChild(s); 
  }};
  }else{
  s.onload = function(){ fun(); s.onload = null; s.parentNode.removeChild(s); };
  }
  } 
  tags[0].appendChild(s); 
};

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。