首先是js的弹出窗口函数:
- //新增一个在点了确定以后就可以关闭的窗口
- function openWindowCanClose(url,title,width,height)
- {
- try{
- var dt=new Date();
- var iframeId="dailogIframe_"+dt.getHours()+""+dt.getMinutes()+""+dt.getSeconds()+""+Math.random();
- var ifame_html="<iframe id='"+iframeId+"' src='"+url+"' style='BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; WIDTH: 100%; BORDER-BOTTOM: 0px; HEIGHT: 100%' frameBorder='0' scrolling='no'></iframe>";
- var win=new Ext.Window({
- title: title,
- closable:true,
- width:width,
- height:height,
- border:false,
- plain:true,
- closeAction:'close',
- items: [
- new Ext.Panel({
- height:height-30,
- html:ifame_html
- })
- ]
- });
- win.show();
- win.on("close",function(p)
- {
- document.getElementById(iframeId).src="";
- //document.removeChild(document.getElementById(iframeId));
- });
- return win;
- }catch(e){alert(e);}
- }
- grid_DataStore.load({params:{start:0, limit:pageSize}});
- function e_register(btn, e){
- xxxxOpenDialog=openWindowCanClose("register.html",'添加纠纷信息',650,500);
- }
在弹出窗口的button确定按钮点击以后:
- buttons: [{
- text: '确定',
- handler:function(btn){
- if(!editPanel.form.isValid())return;
- var formLength=editPanel.form.items.items.length;
- JFInfo=new Object();
- for(var i=0;i<formLength;i++)
- {
- var control=editPanel.form.items.items[i];
- if(typeof(control.getValue())=="object")
- {
- JFInfo[control.name]=control.value;
- }else
- {
- JFInfo[control.name]=control.getValue();
- }
- }
- JFInfo["n_rydh"]=getRequestParame("id");
- JFInfo["n_cldh"]=getRequestParame("n_cldh");
- JFInfo["n_rwdh"]=getRequestParame("n_rwdh");
- if( JFInfo["n_rydh"]==0){
- JFInfo["n_rydh"]=null;
- }
- if(JFInfo["n_cldh"]==0){
- JFInfo["n_cldh"]=null;
- }
- if(JFInfo["n_rwdh"]==0){
- JFInfo["n_rwdh"]=null;
- }
- Ext.MessageBox.confirm("新增提示","确定要增加纠纷信息吗?",function(e){
- if(e=="yes"){
- MailLoseBotherManage.addBotherInfo(JFInfo,function(value){
- parent.parent.alertMsg(value.msg);
- if(value.sucess==true)
- {
- parent.parent.reloadData();
- parent.parent.closeWindow();
- btn.setText("确定");
- btn.enable();
- }else{
- btn.setText("确定");
- btn.enable();
- }
- });
- }else return;
- });
- }
- },{
- text: '重置',
- handler:function(){editPanel.form.reset();}
- }]
- parent.parent.reloadData();
- parent.parent.closeWindow();
这两句首先reload 主面板main里面的gird,然后关闭两个弹出窗口
关闭的实现在这里:
- function closeWindow()
- {
- if(true)
- {
- xxxxOpenDialog.close();
- }
- }
补充reloaddata的定义:
- reloadData=function(){
- if(!searchPanel.form.isValid())return;
- var formLength=searchPanel.form.items.items.length;
- var searchFilds=new Object();
- searchFilds["start"]=0;
- searchFilds["limit"]=pageSize;
- for(var i=0;i<formLength;i+=1)
- {
- var control=searchPanel.form.items.items[i];
- searchFilds[control.name]=control .getValue();
- //alert(control.name+" "+control .getValue());
- }
- grid_DataStore.load({params:searchFilds});
- };