easyUI动态加载时崩溃

这段时间在使用easyUI做界面时,发现这么一个问题,在我点击一个左边的一个树菜单时,它此时本来应该是动态的创建一个tabs的,结果,tabs没出来,反而我整个系统页面崩溃了,报了个这样的错误


下面是页面代码

<li><a onclick="javascript:addTab('书籍查看','',true,'student/resource/downloadBook.jsp','')">书籍查看</a></li>
 addTab方法

//添加tab
	function addTab(title, iconCls, closable, href, content) {
		var tab = $("#back_mainTab");
		if (href == null || href == "") {
			//判断这个obj中的title是否已经在tab中存在
			if (tab.tabs('exists', title)) {
				tab.tabs('select', title);
			} else {
				tab.tabs('add', {
					title : title,
					iconCls : iconCls,
					closable : closable,
					content : content,
				});
			}
		} else if (content == null || content == "") {
			if (tab.tabs('exists', title)) {
				tab.tabs('select', title);
			} else {
				tab.tabs('add', {
					title : title,
					iconCls : iconCls,
					closable : closable,
					href : href
				});
			}
		}


后面通过问同事和百度,出现这种问题有下面几种情况

1. downloadBook.jsp页面你可能没有body标签,因为href属性只引入url中的<body></body>中的内容,而你却没有这个标签,它取不到所以就崩溃

2. 可能是downloadBook.jsp页面和你的主界面的id有冲突,也就是重复,它也会直接崩溃

如果以上情况都不存在,那么你就可以用下面这种方法了,下面这个方法能解决大部分easyUI界面崩溃的问题,可谓是个万精油方法

使用ifram标签将你所想指向的界面给框起来,然后将其变成一个tabs里面的内容传给addTab方法,这个方法虽然好用,但是对资源消耗比使用href要大,使用时自己取舍

下面是使用上面这种方法修改过的代码

<li><a href="javascript:void(0);" onclick="javascript:addTab('书籍查看','icon-mini-add',true,'','<iframe src=student/resource/downloadBook.jsp  frameborder=0 style=border:0;width:100%;height:99.5%;></iframe>')">书籍查看</a>
					</li>




猜你喜欢

转载自blog.csdn.net/pttaoge/article/details/77604186
今日推荐