0 0

easyui datagrid 弹出窗口空白的解决方法5

我的主页面,代码如下:

//添加数据弹出窗口
$(function(){	    	
    addDataWin = $('#addData-window').window({					
        href:'${basePath}/page/marketPlat2/addData/addData.jsp?workId=${workId}year=${year}&month=${month}   &quarter=${quarter}&businessType=${businessType}&type=${type}',
	title:'添加数据',
	left:'100px',
	top:'70px',
	closed: true,
	modal: false,
	cache: false,
	minimizable:false,
	maximizable:false,
	collapsible:false,
	shadow: false
    });
//添加数据弹出窗口
	function addData(){
		addDataWin.window('open');		        	   
	}
}
//这里只插入了一个datagrid的部分代码,就是点击这个按钮,就会新调用addData()方法;
{
    id:'add',
    text:'新增',
    iconCls:'icon-add',
    handler:addData
}
 //关闭弹出窗口
function closeWin(myWin) {
    myWin.window('close');
				 
};	

 

<!-- 弹出窗口:添加数据 -->
<div id="addData-window" title="添加数据" style="width:510px;height:300px;font-size: 16">
</div>


效果图为: 
主页面代码 

第一个弹出窗口代码为:

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
	response.setHeader("Cache-Control", "no store");//HTTP 1.1 
	response.setHeader("Pragma", "no store");//HTTP 1.0 
	response.setDateHeader("Expires", 0);//在代理服务器端防止缓冲
	
	
	request.setAttribute("workId", request.getParameter("workId"));//yearwork表中的
	request.setAttribute("year", request.getParameter("year"));//年
	request.setAttribute("month", request.getParameter("month"));//月
	request.setAttribute("querter", request.getParameter("quarter"));//季
	request.setAttribute("businessType", request.getParameter("businessType"));//任务类型      (周1 年3 季2 月0)
	request.setAttribute("type", request.getParameter("type"));
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>添加数据</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<script type="text/javascript">
	$(function(){
		$('#btn-save,#btn-close-save,#serchCustomList,#seachProductList').linkbutton();
		customobjWin=$('#customobj-window').window({
   			href:'${basePath}/page/marketPlat2/addData/seachCustomobj_list.jsp?',
   			title:'选择客户单位',			
   	        closed: true,
   	        minimizable:false,
   		    maximizable:false,	
   		 	collapsible:false,
   	        cache:false,
   		    shadow:false
   		});
		productWin=$('#product-window').window({
			href:'${basePath}/page/marketPlat2/addData/seachProduct_list.jsp?&type=${type}',
			title:'选择产品',			
	        closed: true,
	        minimizable:false,
	        collapsible:false,
		    maximizable:false,	
	        cache:false,
		    shadow:false
		});
	});
	//选择客户单位弹出窗口
	function seachCustomobj(){
		customobjWin.window('open');
		 
	}
	//给客户单位文本框和隐藏域赋值
	function setCustomobjName(customOBJ){
		$('#seachCustomobjId').val(customOBJ.customobjId);
		var s =$('#seachCustomobjId').val();
		$('#seachCustomobjName').val(customOBJ.customobjName);
	}
	//给产品文本框和隐藏域赋值
	function setProductName(productOBJ){
		$('#seachProductId').val(productOBJ.productId);
		$('#seachProductName').val(productOBJ.productName);
	}
	//关闭客户单位弹出窗口
	function closeCustomWin(){
		customobjWin.window('close');
	 
	}
	//关闭产品弹出窗口
	function closeProductWin(){
		productWin.window('close');
		 
	}
	//选择产品弹出窗口
	function seachProduct(){
		var customobjId = $('#seachCustomobjId').val();
		if(customobjId==""||customobjId==null){
			alert("请选择客户单位");
			return false;
		}else{
			productWin.window('open');
		}
	}
</script>
</head>

<body>
		<div style="padding: 10px 10px 10px 10px;">
				<form method="poxt">
					<table >
						<tr>
							<td width="30%">请选择客户单位:</td>
							<td width="50%">
								<input type="hidden" id="seachCustomobjId" name="seachCustomobjId" />
								<input type="text" name="seachCustomobjName" id="seachCustomobjName" readonly="readonly"  class="easyui-validatebox"  required="true" missingMessage="请选择客户单位名称" style="width:200px"></input>
							<td>
							<td width="20%"><a href="javascript:void(0)" onclick="seachCustomobj()"  id="serchCustomList" icon="icon-search">选择</a></td>
						</tr>
						<tr><td colspan="3">&nbsp;</td></tr>
						<tr>
							<td>请选择产品:</td>
							<td>
								<input type="hidden" id="seachProductId" name="seachProductId" />
								<input type="text" name="seachProductName" id="seachProductName" readonly="readonly"  class="easyui-validatebox"  required="true" missingMessage="请选择产品名称" style="width:200px"></input>
							<td>
							<td ><a href="javascript:void(0)" onclick="seachProduct()" id="seachProductList" icon="icon-search">选择</a></td>
						</tr>
					</table>
				</form>
			</div>
			<div style="text-align: center; padding: 5px;">
				<a href="javascript:void(0)" onclick="saveAddData()" id="btn-save" icon="icon-save">保存</a>&nbsp;&nbsp;&nbsp;&nbsp;
				<a href="javascript:void(0)" onclick="closeWin(addDataWin)" id="btn-close-save" icon="icon-cancel">取消</a>
			</div>
	</table>
	<!-- 2期新增数据功能之选择客户单位弹出窗口 -->
		<div id="customobj-window" class="earyui-window" title="选择客户单位" style="width: 550px; height: 350px; padding: 0px; background:#fafafa; ">
	<!-- 2期新增数据功能之选择产口弹出窗口 -->
		<div id="product-window" class="earyui-window" title="选择产品" style="width: 550px; height: 300px; padding: 0px; background:#fafafa; ">
		</div>
</body>
</html>

 

效果图如下:

第一个弹出窗口

第二个弹出窗口代码为:

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
response.setHeader("Cache-Control", "no store");//HTTP 1.1 
response.setHeader("Pragma", "no store");//HTTP 1.0 
response.setDateHeader("Expires", 0);//在代理服务器端防止缓冲
%>
<html>
	<head>
		<base href='${basePath}'>
		<title>选择客户单位</title>
		<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
		<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
		<META HTTP-EQUIV="Expires" CONTENT="0">
		<script type="text/javascript">
		var customOBJ;
		
		$(function(){	
		     		  
			$('#btn-search,#btn-save','#product-search1').linkbutton();
		    $('#customobjList').datagrid({   
				width:500, 
				height:200, 
				pageSize:5,
				pageList:[5,15,20,25,30,35,40],
				singleSelect:true,
				nowrap:false,
				url:'${basePath}/marketPlat/addDataServlet?method=seachOwnCustomobj',
				onLoadSuccess:function(data){
					//alert(data.rows.length);
				},
				onDblClickRow:function(rowIndex, rowData){
					customOBJ=new Object();			    	
			    	customOBJ.customobjId=rowData.customObjId;
			    	customOBJ.customobjName=rowData.name;
			    	setCustomobjName(customOBJ);
			    	closeCustomWin();
				},
				columns:[[			
					{field:'name',title:'客户单位全称',width:180,align:'left',
						formatter:function(value,rowData,rowIndex){
							//alert(value);
							return value;
						}
					},
					{field:'industry',title:'所属行业',width:150,align:'center'},
					{field:'regionType',title:'客户类别',width:150,align:'center'}
				]],
				pagination:true
			});	
			
		}) ;
		function searchCustomobj(){
			var customobjName = $('#customobjName').val();	
			var queryParams = $('#customobjList').datagrid('options').queryParams;
			queryParams.seachCustomobjName=customobjName;
			$('#customobjList').datagrid('reload');
		}
		
	</script>	
	</head>
	<body>
		<div>
			<form id="customForm" method="post">
			<table height="100%" cellspacing="0" cellpadding="0" width="100%" border="0">
			
					<tr>
						<td style="background-image: url(images/main_ls.gif)">
							  
						</td>
						<td
							style="padding-right: 10px; padding-left: 10px; padding-bottom: 10px; color: #566984; padding-top: 10px; background-color: white"
							valign="top" align="left">
							客户单位名称:<input type="text" id="customobjName" width="150px" height="30" value="" />
							<a href="javascript:void(0)" onclick="searchCustomobj();" class="easyui-linkbutton"  id="btn-search" icon="icon-search">查询</a>
						</td>
						<td style="background-image: url(images/main_rs.gif)"></td>
					</tr>
					<tr>
						<td style="background-image: url(images/main_ls.gif)">
							&nbsp;
						</td>
						<td
							style="padding-right: 10px; padding-left: 10px; padding-bottom: 10px; color: #566984; padding-top: 10px; background-color: white"
							valign="top" align="left">
							<div>
								<table id="customobjList" border="1"></table>
							</div>
						</td>
						<td style="background-image: url(images/main_rs.gif)"></td>
					</tr>
				
			</table>
			</form>
		</div>
	
	</body>
</html>

 

效果图为:

第二个弹出窗口

正常操作步骤:
1、点击新增按钮时(第一个图片),
2、打开第一个弹出窗口“添加数据弹出窗口”(第二个图片),
3、当我在添加数据弹出窗口中点击“查询”按钮时,弹出第二个弹出窗口,查询出数据显示出来(第三个图片);
现在问题是:
如果我按上面顺序打开后,没有做任何操作,再关闭2、3步骤的弹出窗口,再重复上面1-3的步骤时,第3步的页面打开没有数据,直接显示空白,如果把主页面刷新一下,又正常了,但是打开第一层、第二层弹出窗口,再关闭,然后再点击新增按钮,再加开第一层弹出窗口,没有任务问题,打开第二层弹出窗口后,又出现空白。

我查看了一下,没有缓存,而且第3步的datagrid方法也在后台debug调用了,打开第二层弹出窗口时,后台的方法也有执行,也有返回json字符串数组,在第3步的页面jsp中我也alert()打印过了,都有数据,就是table显示不出来,请教一下高手这是哪 里出问题了?如何解决?
附问题页面:

问题图

2012年8月03日 10:31
目前还没有答案

相关推荐

    easyui datagrid 表格 打印

    标题“easyui datagrid表格打印”关注的就是如何解决这个问题,即如何将经过formatter处理后的数据在打印时保持原有的格式。 在描述中提到的“支持formatter格式化数据的打印”,指的是Datagrid中用于数据美化和...

    easyui datagrid 数据导出到Excel

    下面将详细介绍两种有效的方法来实现EasyUI Datagrid数据导出到Excel的功能,并结合提供的文件名来推测具体实现步骤。 **方法一:使用JavaScript库(例如wxport)** 文件`wxport excel.txt`可能包含了使用wxport库...

    easyui datagrid 右冻结

    标题中的“easyui datagrid 右冻结”是指在使用EasyUI框架开发Web应用程序时,针对datagrid组件实现右侧列固定的功能。EasyUI是一个基于jQuery的UI库,提供了丰富的组件,包括datagrid,它是一个用于展示表格数据的...

    easyui datagrid中实现上下左右、回车切换单元格

    easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格

    JS EasyUI DataGrid动态加载数据

    JS EasyUI DataGrid是一款基于jQuery和EasyUI框架的数据表格组件,它提供了丰富的功能,如数据分页、排序、过滤和自定义操作等。在实际应用中,动态加载数据是DataGrid的一个重要特性,允许用户在需要时加载更多的...

    easyUI datagrid rownumber自适应宽度扩展JS

    easyUI datagrid 自动调整行号大小

    easyui datagrid editor回车切换单元格示例,可参考

    easyui datagrid editor回车切换单元格示例,适合熟悉easyui但又不懂如何做的人员,可能参考一下源码JS。

    easyui datagrid 增加鼠标悬停弹窗事件

    在本示例中,我们关注的是如何在EasyUI的Datagrid组件上添加一个特殊功能:当鼠标悬停在某一行时,弹出一个窗口显示该行的关键信息,例如用于图片预览。以下是对这个知识点的详细解释: 1. **EasyUI Datagrid**: ...

    EasyUI DataGrid过滤用法实例

    EasyUI 是一个基于 jQuery 的 UI 框架,它提供了丰富的组件,包括表格(DataGrid)等,使得 Web 应用程序的界面开发更加便捷。在这个"EasyUI DataGrid 过滤用法实例"中,我们将深入探讨如何利用 EasyUI 的 DataGrid ...

    jquery easyui datagrid demo

    这个“jquery easyui datagrid demo”包含了一些关于如何使用 jQuery EasyUI 中 Datagrid 组件的示例和相关文档,帮助我们理解和应用 Datagrid。 首先,`datagrid.doc` 文件很可能是 Datagrid 的简要说明文档,它...

    EasyUI Datagrid 中文排序的问题

    本文将详细介绍如何解决EasyUI Datagrid中的中文排序问题,并分别从前端和后端两个角度给出具体的实现方案。 #### 二、EasyUI Datagrid简介 EasyUI 是一个基于 jQuery 的简单而强大的 UI 库,它提供了大量的用户...

    easyui datagrid在编辑状态下更新列的值

    在使用EasyUI框架开发Web应用时,Datagrid组件是一个非常重要的元素,它提供了一种方便的方式来展示和操作数据。在标题“easyui datagrid在编辑状态下更新列的值”中,我们关注的是如何在Datagrid的编辑模式下动态地...

    解决EasyUIdataGrid列比较多,无数据,列展现不全

    ### 解决EasyUI dataGrid列较多时无数据显示不全的问题 在使用EasyUI框架进行前端开发的过程中,可能会遇到dataGrid组件在数据为空时列显示不完整的问题。这不仅影响用户体验,也降低了系统的可用性。本文将详细...

    扩展 jQuery EasyUI Datagrid 数据行鼠标悬停离开事件完整版Demo下载

    jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) Demo 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停离开事件,源码奉献!!!

    easyui datagrid 分页查询样例

    EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的功能,如表格布局、数据分页、排序、过滤等,常用于Web应用的数据展示。在本项目中,"easyui datagrid 分页查询样例"是利用EasyUI Datagrid与...

    easyui datagrid 多条件筛选 可复选 类似淘宝筛选

    在IT领域,EasyUI是一个基于jQuery的前端框架,它提供了丰富的UI组件,如datagrid,用于构建用户界面。本文将深入探讨如何使用EasyUI datagrid实现多条件筛选功能,特别是支持可复选的筛选条件,类似于淘宝网站上的...

    easyui datagrid标题列宽度自适应

    3. **EasyUI内置方法**:EasyUI提供了`resize`方法,可以用于调整datagrid的大小。当窗口大小变化时,调用这个方法可以使datagrid自适应新的窗口尺寸。 4. **列属性设置**:在定义datagrid的列时,可以设置`width`...

    easyUI datagrid 行上移,下移,置顶,置底的方法

    easyUI datagrid 行上移,下移,置顶,置底的方法

    Easyui Datagrid 实现行过滤[模糊查询]

    在IT领域,尤其是在Web开发中,EasyUI是一个广泛使用的JavaScript框架,它基于jQuery,提供了丰富的UI组件,如Datagrid,用于构建数据展示和管理的表格。在本篇中,我们将深入探讨如何在EasyUI的Datagrid中实现行...

    easyui datagrid 导出到excel

    在IT领域,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如排序、分页、过滤等。"EasyUI Datagrid 导出到Excel"这一主题涉及的是如何将EasyUI Datagrid中的数据显示在Excel表格中,...

Global site tag (gtag.js) - Google Analytics