(原创)关于showmodaldialog 打开新窗口后在执行“查询,翻页”操作时,避免弹出新窗口和避免从后台获取“新数据”后不能刷新当前模态页面的解决方案:...

关于showmodaldialog 打开新窗口后在执行“查询,翻页”操作时,避免弹出新窗口和避免从后台获取“新数据”后不能刷新当前模态页面的解决方案:


案例:从父页面A 通过showmodaldialog的方式 打开模态子页面B,子页面上进行“查询,翻页功能”

1:从父页面A打开子页面B:

var url = "cn.ccb.orms.rcsa.pageflow.RscaQueryItemInfosPopup.flow"; 
var itemInfo = showModalDialog(url,window,'dialogWidth:800px;dialogHeight:500px;dialogLeft:100px;dialogTop:250px;center:yes;help:yes;resizable:yes;status:yes'); 

 

2:进入模态页面B后的JS和JAVA代码

<xmdc:verbatim> 
<base target="_self" /> 
</xmdc:verbatim> 

<xmdc:commandButton action="pageQuery" value="8" 
styleClass="button_dateset" style="width: 30px; margin-right: 5px" 
οnclick="changeFrame();gotoLastPage(this,'page');" 
disabled="#{page.isLast==true}"> 
</xmdc:commandButton> 
<xmdc:outputText value=" 每页显示" style="padding-top:5px"></xmdc:outputText> 
<xmdc:inputText id="page_length" value="#{page.length}" 
style="width:50px" maxlength="9" 
οnkeyup="value=value.replace(/[^\d\.]/g,'');"></xmdc:inputText> 
<xmdc:outputText value="条转到" style="padding-top:5px"></xmdc:outputText> 
<xmdc:inputText id="page_currentPage" value="#{page.currentPage}" 
style="width:50px" maxlength="9" 
οnkeyup="value=value.replace(/[^\d\.]/g,'');"></xmdc:inputText> 
<xmdc:outputText value="页" style="padding-top:5px"></xmdc:outputText> 
<xmdc:commandButton action="pageQuery" value="跳转" title="跳转到指定页" 
styleClass="button" 
οnclick="changeFrame();gotoCustomPage(this,'page');"> 
</xmdc:commandButton> 
…… 
…… 
…… 
<xmdc:panelGrid columns="2" border="0" align="center" 
columnwidths="60px,60px"> 
<xmdc:commandButton id="queryBtn" action="query" styleClass="button" 
value="查询" οnclick="changeFrame();"></xmdc:commandButton> 
</xmdc:panelGrid> 


<xmdc:verbatim> 
<script type="text/javascript"> 
//初始化提交FORM的TARGET值。 
window.attachEvent('onload', function(){ 
    // alert(window.name); 
    if(window.name=""){ //判断窗体的name,防止查询或者翻页操作时弹出新窗口 
        document.getElementById("theform").target = "dialogFrame"; 
    }else if(window.name="dialogFrame"){//判断执行查询或翻页操作后,返回当前页面不刷新展现新数据 
        document.getElementById("theform").target = ""; 
    } 
}) 

function changeFrame(){// 判断如果是执行查询或翻页操作,则改变当前窗口form的target值,防止弹出新窗口 
    document.getElementById("theform").target = "dialogFrame"; 
} 

</script> 
</xmdc:verbatim> 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值