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

我的主页面,代码如下:

Javascript代码

//添加数据弹出窗口
$(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‘);

};    

Html代码

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

效果图为: 

第一个弹出窗口代码为:

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);//在代理服务器端防止缓冲

    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>

效果图如下:

第二个弹出窗口代码为:

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显示不出来,请教一下高手这是哪 里出问题了?如何解决?
附问题页面:

时间: 2024-10-12 19:29:51

easyui datagrid 弹出窗口空白的解决方法的相关文章

JavaScript页面刷新与弹出窗口问题的解决方法

1. [代码][JavaScript]代码     ?一.无提示刷新网页 大家有没有发现,有些网页,刷新的时候,会弹出一个提示窗口,点“确定”才会刷新.而有的页面不会提示,不弹出提示窗口,直接就刷新了. 如果页面没有form,则不会弹出提示窗口. 如果页面有form表单,  a)< form method="post" ...> 会弹出提示窗口  b)< form method="get" ...> 不会弹出 二.javascript刷新页面

登录窗体登录失败但是MainForm依然弹出无法结束的解决方法

问题描述:登录窗体登录失败但是MainForm依然弹出无法结束的解决方法 解决方法:把form3.close,exit; 改为application.terminate 结束退出程序: 参考链接:http://www.delphitop.com/html/chengxu/131.html delphi关闭程序Close,application.Terminate与halt区别 当Close是一个主窗体时,程序会退出.Close会发生FormClose事件,FormCloseQuery事件Halt

win7,M?i?n?d?m?a?n?a?g?e?r?2?0?1?2使用模板时弹出Runtime error R6025解决方法

Mindjet.MindManager2012.v10.0在应用个别模板时提示"参数错误",然后自动关闭. 解决办法: 如果是win7系统,可以进入C:\Users\(用户名)\AppData\Local\Mindjet\MindManager\10\Library\ENU\Templates, 可以看到如下模板:Management/Meetings and Events/Personal Productivity/Problem Solving/Project Management

关于带有EditText的自定义AlertDialog,不能弹出软件盘的解决方法

原文 : 关于带有EditText的自定义AlertDialog,不能弹出软件盘的解决方法 mDialog = new AlertDialog.Builder(context, R.style.AlertDialog).create(); mDialog .show(); mDialog .getWindow().setContentView(layout); 原先的代码是这样的,但是运行后发现当弹出对话框的时候点击edittext无法弹出软键盘,但是这样写又能弹出软键盘: mDialog =

windows7点击&quot;安全删除硬件并弹出媒体&quot;无反应解决方法

windows7点击"安全删除硬件并弹出媒体"无反应解决方法 我在移除硬件时,点击"安全删除硬件并弹出媒体"无反应的问题,如果采取直接拔掉USB,可能会损坏U盘或移动硬盘,对于该问题通过以下方式可以简单解决:        "开始菜单">>"控制面板">>"系统和安全">>"管理工具">>"服务">>在&qu

支付弹出窗口被拦截解决办法

看过很多解决这个办法的文章,但是对于ajax请求的弹出窗都没什么用,直到看到了这边文章才豁然开朗,其实是很简单的,下面是复制过来的文章. window.open是javascript函数,该函数的作用是打开一个新窗口或这改变原来的窗口,不过一般用来的是打开新窗口,因为修改原来的网页地址,可以使用window.location,可以重定向网页地址,使网页跳转到另一个页面. 但是一般情况下,如果直接在js中调用window.open()函数去打开一个新窗口,浏览器会对弹出的窗口进行拦截,因为浏览器会

jquery 弹出窗口,锁定背景方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN"><head><title>新建网页</titl

“弹出DVD驱动器错误”解决方法

错误描述:(win7环境) 买了个开发板,赠送了一些光盘,放在电脑光驱中打开后,电脑就疯狂响,可能是光盘质量太差.用完后在弹出时显示“弹出DVD驱动器错误”[见图1].直接按主机上弹出按钮也没有反应. google结果: 确保计算机已关闭. 将一个拉直的回形针插入驱动器正面的弹出孔并稳定地推入,直至托盘部分弹出. 轻轻将托盘完全拉出. 我觉得这种方法太麻烦了,而且有风险,是迫不得已才用的手段,我想到了Unlocker. 神器Unlocker Unlocker出手[见图2],发现是explorer

jsp网页弹出窗口的多种办法

http://blog.csdn.net/huangfoxjava/article/details/2973033 登录|注册     huangfoxjava的专栏 目录视图 摘要视图 订阅 关于jsp网页弹出窗口[很多种方法......] 分类: JSP2008-09-24 14:22 5799人阅读 评论(0) 收藏 举报 jspjavascript框架html脚本浏览器 各种弹出页面的设计 [1.普通的弹出窗口] 其实代码非常简单: <SCRIPT LANGUAGE=javascript