在一个js文件中引用另一个js文件(此文件仅包含一个js数组),怎么实现,这种方法有没有什么问题

再看我一眼 2013-12-06 04:35:23
如题

现在需要做一个二级联动的菜单,想先用一个js文件来存放这个数组 然后再另一个写方法的页面调用这个文件和数组,应该怎么做

这种方式有没有什么问题? 有没有更好的解决办法?

数组js: arr.js

var br = new Array();

br[1] = new Array(); //身份信息
br[1][1] = "身份证明不清晰";
br[1][2] = "需补充二代身份证";
br[1][3] = "申请人有两个身份证号码(非正常升位),需补充派出所卡具的户籍证明";
br[1][4] = "身份证信息录入有误";
br[1][5] = "其他";


方法js

function htyy(obj){
//这里怎么获得br这个数组
var zhuyuanyin = $(obj).val();
var ziyuanyin_html = "";
var ziyuanyin_obj = br[zhuyuanyin];
$.each($(ziyuanyin_obj), function(i, n){
ziyuanyin_html += "<option value='"+i+"'>"+n+"</option>";
});
$("select[name='htyy_2']").html(ziyuanyin_html);
}

...全文
825 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2013-12-07
  • 打赏
  • 举报
回复
在你的代码中,我们看到了非原生 js 的元素 $ 权且当做你引入了 jquery 框架吧 而 jquery 已经提供了动态加载 js 文件的功能 见 http://www.w3school.com.cn/jquery/ajax_getscript.asp 如果不是 jquery 框架,也完全可以通过原生的 js 实现 设一个带有 id 的script 标记 在程序中动态修改它的 src 属性就可完成 js 文件的动态加载 不过这个加载过程是异步的,你需要做些处理以确定 js 文件已加载完成了 当然你也可以采用 #6 的动态加入 script 节点的方法。 但估计你看不懂
hch126163 2013-12-07
  • 打赏
  • 举报
回复
// 动态导入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); };
zhjdg 2013-12-06
  • 打赏
  • 举报
回复
	<script>
	var flag=false;
	var loading = false;
	var error = false;
	var time = null;
	function success(){
		flag=true;
		loading = 'over';
		
	};
	function error(){
		error=true;
	}
	function getData(){
		$.ajax({
			  url: 'arr.js',
			  dataType: "script",
			  success: success,
			  error : error
			});
	}
	
	
	function htyy(obj){
		if(!flag){
			if(error){
				alert('error');
				return;
			}
			if(loading){
				if(loading == 'over'){
					clearInterval(time);
				}
				return;
			}else{
				loading = true;
				getData();
				time = setInterval(jQuery.proxy(htyy,null,obj),500);
				return;
			}
		}else{
			clearInterval(time);
		}
		
		var $a = br;
		var $b = obj;
		
	    /*  
	    var zhuyuanyin = $(obj).val();
	    var ziyuanyin_html = "";
	    var ziyuanyin_obj = br[zhuyuanyin];
	    $.each($(ziyuanyin_obj), function(i, n){
	        ziyuanyin_html += "<option value='"+i+"'>"+n+"</option>";
	    });
	    $("select[name='htyy_2']").html(ziyuanyin_html);
		*/
	}
	htyy({name:'j',addr:'t'});
	
	</script>
  • 打赏
  • 举报
回复
a.js,你的数组文件 b.js
document.write ('<script src="a.js"></script>')
//注意使用a.js数组的代码要放到window.onload中,动态输出的script不会挂起本js文件后续代码的执行
window.onload=function(){
  //your code use a.js array
}
再看我一眼 2013-12-06
  • 打赏
  • 举报
回复
感谢楼上两位的回复 这两种方式都可以,我现在就是在一个文件里边写的 但是还是想要把他们分开,并且不在这个特定的html页面同时引入 所以还是需要在这个JS内或者这个js方法内引入 求方法
别闹腰不好 2013-12-06
  • 打赏
  • 举报
回复
同时引入就行
Null_Reference 2013-12-06
  • 打赏
  • 举报
回复
就跟一个文件里面一样写,只是要注意引用文件的先后顺序就行了。
A星算法融合DWA算法实现规避未知障碍物的Matlab代码(全局规划算法融合动态窗口算法DWA)内容概要:本文介绍了A星算法与动态窗口算法(DWA)融合的Matlab代码实现,旨在解决移动机器人在复杂环境进行全局路径规划与局部动态避障的问题。通过A星算法生成从起点到目标点的全局最优路径,再结合DWA算法实时感知并规避未知动态障碍物,提升路径规划的安全性与实时性。文档展示了算法融合的技术思路、核心代码结构及应用场景,适用于栅格地图下的机器人导航仿真,突出其在不确定环境的适应能力。; 适合人群:具备一定Matlab编程基础,对路径规划、机器人导航、智能算法有一定了解的高校学生、科研人员及自动化、 robotics 方向的工程技术人员。; 使用场景及目标:① 实现移动机器人在静态与动态障碍共存环境下的安全导航;② 学习并掌握A星与DWA算法的原理及融合策略;③ 为科研项目、课程设计或竞赛(如机器人比赛、数学建模)提供可复用的代码框架与技术参考。; 阅读建议:建议结合Matlab仿真环境运行代码,逐步调试A星与DWA模块,理解两者在路径规划分工协作机制;可进一步扩展至三维空间或引入传感器噪声模拟,提升算法鲁棒性。
【无线传感器网络】LEACH和LEACH-C协议研究(Matlab代码实现)内容概要:本文档主要围绕无线传感器网络的LEACH和LEACH-C协议展开研究,重点介绍这两种经典分簇路由协议的原理、特点及性能对比,并通过Matlab代码实现相关仿真,帮助读者深入理解其工作机制与优化方向。文详细阐述了LEACH协议的随机簇头选举机制与周期性轮换策略,以及LEACH-C协议如何引入网络全局信息(如节点位置、剩余能量)进行集式簇头选择以提升网络能效与生命周期。同时,配套的Matlab代码提供了完整的仿真框架,便于科研人员进行算法验证与二次开发。; 适合人群:具备一定无线传感器网络基础知识和Matlab编程能力的高校研究生、科研人员及从事物联网、低功耗传感网络相关技术研发的工程技术人员。; 使用场景及目标:①用于教学与学习LEACH系列协议的核心思想与实现细节;②支撑科研工作对路由算法的对比实验与性能评估;③为优化现有分簇协议或设计新型节能路由算法提供代码基础与仿真平台。; 阅读建议:建议结合无线传感器网络相关教材同步学习,先掌握基本概念后再深入代码实现部分,重点关注簇头选举、数据聚合与能量消耗模块的设计逻辑,并可通过调整网络参数(如节点数量、分布范围、运行轮数)进行仿真实验以加深理解。

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧