可以考虑在主页面中定义input设置属性 hidden ,在打开dialog,onopen函数中操作赋值,然后在子页面中取主页面中数据。(子页面是可以取主页面中数据中)
主页面打开子页面中dialog语句
var d = $('<div/>').dialog({width:450,height:600,title:'角色菜单',
href:'${pageContext.request.contextPath}/admin/jscdAdd.jsp',modal:true,
onOpen:function(){
//在主页面上设置一个隐藏的input,在此给赋值,然后让dialog进行取值,传递给后台查询角色对应的菜单
$('#admin_jscdadd_hidden_rolesid').val(rolesid);
},
buttons:[{text:'提交',handler:function(){
var rows_cd = $('#admin_jscdadd_tree').tree('getChecked');
if(rows_cd.length>0){
for(var i =0; i<rows_cd.length;i++){
ids.push(''+rows_cd[i].menuid);
}
}
.....
<input id="admin_jscdadd_hidden_rolesid" value="" hidden="hidden"/>
子页面中:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<script type="text/javascript">
$(function() {
$('#admin_jscdadd_tree').tree({
url: '${pageContext.request.contextPath}/roleMenuAction!getTreeNodeCx.action?rolesid='+$('#admin_jscdadd_hidden_rolesid').val(),
dataType:'json',
即可以实现。
首先要注意给隐藏变量赋值,然后dialog获取隐藏变量,传递变量值。(子页面中内容是可以访问主页面的哦)

563

被折叠的 条评论
为什么被折叠?



