js關(guān)閉模態(tài)窗口刷新父頁面或跳轉(zhuǎn)頁面
有兩個(gè)窗口: A窗口(父),B窗口(模態(tài))
A窗口里有一個(gè)DATAGRID,一個(gè)按鈕。
點(diǎn)擊按鈕時(shí),彈出B窗口(模態(tài))。在B窗口中添加數(shù)據(jù),提交后,要求B窗口自關(guān)閉,然后刷新A窗口(父)
<script type="text/javascript">
function openSubWin()
{
window.showModalDialog('b.html', 'newwindow', 'height=500, width=400, top=0, left=0, toolbar=no, menubar=yes, scrollbars=yes,resizable=yes,location=no, status=no');
window.location.reload();
}
</script>
彈出子窗體b.html , 當(dāng)關(guān)閉子窗體時(shí) 觸發(fā)父頁面刷新
最近做物資系統(tǒng)的時(shí)候,又涉及到模態(tài)窗口的問題了,上次做的時(shí)候沒遇到這次這么多東西,記下來吧
父窗口 js方法
function openwin(id){
var answer=window.showModalDialog("demand.do?method=queryBOM&mdid="+id+"&d="+escape(new Date()),window.self,"dialogWidth:700px;dialogHeight:620px:center:yes");
if(answer==1){
window.location.href = "demand.do?method=selmd&d="+escape(new Date()); //轉(zhuǎn)到處理頁面
//window.location.reload(); 刷新父窗口
//winow.location.reload(true);
}
}
加個(gè)escape(new Date()) 避免讀取緩存,當(dāng)然也可以在子窗口中,加入
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
子窗口 js 方法:
function reVal(){
window.returnValue=1; //父窗口中 answer的值
window.close();
}
打開模態(tài)窗口之后,父窗口會(huì)一直等待子窗口返回個(gè)值,如果是表單提交或是button就執(zhí)行reVal()方法
返回answer的值,window.returnValue=1 這個(gè)地方我測(cè)試了 好像只能返回String類型的,數(shù)組類型的不好使
在子窗口中使用 window.opener.location.reload(); 不好使,不試用于模態(tài)窗口,window.opern() 好使
還有個(gè)問題是:在模態(tài)窗口里form 提交會(huì)彈出新窗口,這個(gè)問題簡單就在<head>里面加個(gè)<base target="_self">
就可以搞定,注:我剛開始是不想通過form提交的,用js window.location.href 跳轉(zhuǎn)到不同的action去處理,發(fā)現(xiàn)
<base target="_self"> 就不起作用了,似乎 <base target="_self"> 只是針對(duì)form action="" 才起作用,這個(gè)地方應(yīng)該可以用iframe 去實(shí)現(xiàn)。
相關(guān)文章
javascript arguments 傳遞給函數(shù)的隱含參數(shù)
眾所周知,js是腳本語言,腳本語言的一個(gè)特點(diǎn)就是極其靈活。有時(shí)“靈活”到使我這種習(xí)慣c系主流語言的人不得不佩服腳本的強(qiáng)大。比如這里要講到的 arguments參數(shù)。2009-08-08
js實(shí)現(xiàn)的四級(jí)左側(cè)網(wǎng)站分類菜單實(shí)例
這篇文章主要介紹了js實(shí)現(xiàn)的四級(jí)左側(cè)網(wǎng)站分類菜單,實(shí)例分析了javascript操作頁面元素實(shí)現(xiàn)tab切換的相關(guān)技巧,需要的朋友可以參考下2015-05-05
JS獲取鼠標(biāo)坐標(biāo)并且根據(jù)鼠標(biāo)位置不同彈出不同內(nèi)容
這篇文章主要介紹了js獲取鼠標(biāo)坐標(biāo)并且根據(jù)鼠標(biāo)位置不同彈出不同內(nèi)容的實(shí)例代碼,需要的朋友可以參考下2017-06-06
JavaScript類型系統(tǒng)之正則表達(dá)式
正則又叫規(guī)則或模式,是一個(gè)強(qiáng)大的字符串匹配工具。javascript通過RegExp類型來支持正則表達(dá)式,本文給大家介紹javascript類型系統(tǒng)之正則表達(dá)式,對(duì)js正則表達(dá)式相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-01-01
使用bootstrap validator的remote驗(yàn)證代碼經(jīng)驗(yàn)分享(推薦)
這篇文章主要介紹了使用bootstrap validator的remote驗(yàn)證器驗(yàn)證經(jīng)驗(yàn)分享(推薦)的相關(guān)資料,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09
學(xué)習(xí)Javascript面向?qū)ο缶幊讨庋b
這篇文章主要幫助大家學(xué)習(xí)Javascript面向?qū)ο缶幊讨庋b,由淺入深的介紹了封裝的概念定義,感興趣的小伙伴們可以參考一下2016-02-02
學(xué)習(xí)JavaScript正則表達(dá)式
這篇文章主要介紹了JavaScript正則表達(dá)式,詳細(xì)深入的了解JavaScript正則表達(dá)式,從而更熟練掌握J(rèn)avaScript正則表達(dá)式,感興趣的小伙伴們可以參考一下2015-11-11
Javascript從數(shù)組中隨機(jī)取出不同元素的兩種方法
這篇文章給大家分享了兩種Javascript從數(shù)組中隨機(jī)取出不同元素的方法,大家可以都學(xué)習(xí)學(xué)習(xí),這樣更能有助于大家的學(xué)習(xí)和理解,下面來一起看看吧2016-09-09
JavaScript實(shí)現(xiàn)計(jì)數(shù)器基礎(chǔ)方法
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)計(jì)數(shù)器的基礎(chǔ)方法2017-10-10
,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

