jsp页面A中弹出窗体窗体中嵌套页面B,弹出方式如下:$('#depAndMod_Win').dialog({
title: '选中发送部门模块',
width: 300,
height: 350,
closed: false,
cache: false,
href: 'B.jsp',
modal: true
});
B中初始化页面的时候 加载异步树 代码如下:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/common/tagLibs.jsp" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!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" />
<link href="${context}/css/css.css" rel="stylesheet" type="text/css" />
<link href="${context}/css/style.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/javascript" src="${context}/js/dateWin/WdatePicker.js"></script>
<script type="text/javascript" src="${context}/js/jquery-1.7.2.min.js"></script>
<title>贵州机场集团值班日志平台</title>
</head>
<body>
<script type="text/javascript">
$(function(){
//alert('laise'); 取消这一行注释 问题解决 非常郁闷
try{
$('#tt').tree({
url:'department/DepartmentAction!queryUnitTreeNode.sr',
checkbox:true,
loadFilter: function(data){
if(data.rows){
return data.rows;
}else{
return data;
}
}
});
}catch(e){}
});
</script>
<ul id="tt"></ul>
<form method="post" id="sendLogsForm" name="sendLogsForm">
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr><td><ul id="tt"></ul></td></tr>
<tr>
<td align="center"><input type="button" value="确定" onclick="sendLogs()"/></td>
</tr>
</table>
</form>
</body>
</html>
说下我发现可能的原因:我的javascript是放在body中的(可能是由于用jquery dialog弹出窗体的原因,将javascript放到head中尽然神奇的不能执行),故而执行了两次加载树的代码,第一次是加载javascript代码,第二次是执行javascript,加载的时候过快导致还没有从后台取得数据故而报错,用alert('fdsaf')可以将代码执行暂时中断,使有时间从后台取得数据加载到树中。不知道我这样叙述大家听得懂不?不明白的话 我在解释,还望看到的朋友帮忙说下解决方案。分我有很多,只要能解决问题,都有分。谢谢!!!
title: '选中发送部门模块',
width: 300,
height: 350,
closed: false,
cache: false,
href: 'B.jsp',
modal: true
});
B中初始化页面的时候 加载异步树 代码如下:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/common/tagLibs.jsp" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!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" />
<link href="${context}/css/css.css" rel="stylesheet" type="text/css" />
<link href="${context}/css/style.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/javascript" src="${context}/js/dateWin/WdatePicker.js"></script>
<script type="text/javascript" src="${context}/js/jquery-1.7.2.min.js"></script>
<title>贵州机场集团值班日志平台</title>
</head>
<body>
<script type="text/javascript">
$(function(){
//alert('laise'); 取消这一行注释 问题解决 非常郁闷
try{
$('#tt').tree({
url:'department/DepartmentAction!queryUnitTreeNode.sr',
checkbox:true,
loadFilter: function(data){
if(data.rows){
return data.rows;
}else{
return data;
}
}
});
}catch(e){}
});
</script>
<ul id="tt"></ul>
<form method="post" id="sendLogsForm" name="sendLogsForm">
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr><td><ul id="tt"></ul></td></tr>
<tr>
<td align="center"><input type="button" value="确定" onclick="sendLogs()"/></td>
</tr>
</table>
</form>
</body>
</html>
说下我发现可能的原因:我的javascript是放在body中的(可能是由于用jquery dialog弹出窗体的原因,将javascript放到head中尽然神奇的不能执行),故而执行了两次加载树的代码,第一次是加载javascript代码,第二次是执行javascript,加载的时候过快导致还没有从后台取得数据故而报错,用alert('fdsaf')可以将代码执行暂时中断,使有时间从后台取得数据加载到树中。不知道我这样叙述大家听得懂不?不明白的话 我在解释,还望看到的朋友帮忙说下解决方案。分我有很多,只要能解决问题,都有分。谢谢!!!
谢谢版主,但视乎还是报错,如题所说:关键性的一句话就是alert(''); 打印一下整个执行就不抱错了。
jQuery EasyUI 1.2.6