1. 程式人生 > >彈出showModalDialog視窗提交表單並關閉視窗的問題 (關閉又彈出新視窗問題)

彈出showModalDialog視窗提交表單並關閉視窗的問題 (關閉又彈出新視窗問題)

近日寫一段程式,為了讓使用者互動的感覺更好一些,決定採用showModalDialog彈出視窗,在使用中卻發現在彈出的視窗內提交表單資料會彈出新視窗,使用感覺極其不好,於是開始動手解決,以下是從網上搜索到的方案,其中第一條已經過實踐是可行的。

1、在showModalDialog開啟的子視窗的<head>中加入 <base target="_self"/> 並且設定form的target為"",如:form method="post" action="order.do" target=""。

2、showModalDialog()是不能夠提交給自己的,得交給自己的話就會有新頁面產生,所以你要指寫form裡的target等於一個值。 在showModalDialog()開啟的子視窗的表單中:<form target=meizz action=aa.asp ...> ,然後在頁面中再加入一個隱藏的iframe:<iframe name=meizz width=0 height=0 frameborder=0 style="display: none"><iframe> 。

3、下面的程式碼也可以實現:

父頁:main.htm 彈窗頁:pop.asp main.htm =================================================

function popwin() {
  var rtn=window.showModalDialog("pop.asp""","","");
  if(rtn==1) {
    alert(rtn);//此處可以執行重新整理main.htm表單等操作
  }
}

================================================= pop.asp
=================================================
function subform() {
 this.document.forms[0].submit();
 window.returnValue = 1;//也可以定義陣列返回
 window.close();

}
  ================================================= OK,程式碼完成,自己根據你的需求,做相應的調整吧,效果是:
1、彈出showModalDialog模態視窗
2、showModalDialog視窗中提交表單
3、showModalDialog視窗向父視窗返回值,並自動關閉

相關推薦

showModalDialog視窗提交關閉視窗的問題 (關閉出新視窗問題)

近日寫一段程式,為了讓使用者互動的感覺更好一些,決定採用showModalDialog彈出視窗,在使用中卻發現在彈出的視窗內提交表單資料會彈出新視窗,使用感覺極其不好,於是開始動手解決,以下是從網上搜索到的方案,其中第一條已經過實踐是可行的。 1、在showModalDialog開啟的子視窗的<hea

fastadmin: layer.open 層如何在提交之後自動關閉

query ack sta asc 這一 ole 彈出層 end true 需要在控制器對應的js文件中添加 Form.api.bindevent($("form[role=form]")); define([‘jquery‘, ‘bootstrap‘, ‘back

php實現點擊文字提交傳遞數據至下一個頁面

asc div echo data -- 提交表單 blog 類型 使用 <?php $id="4";//等會要把這個數據傳到第二個頁面 ?> <?php echo "<li>";

html中提交實現不跳轉頁面處理返回值

html value put 提示 pan sdn type detail all <html> <head> <script type="text/javascript" src="h

通過form的action屬性提交接收處理返回值的方法(頁面不跳轉)

通過form的action屬性提交表單,這個很容易。但是,由於這種方式是同步提交,所以會導致頁面跳轉,且不好拿到返回值。一般都用ajax代替。 有些情況ajax是不能使用的,嚴格的說是不好使用的。例如檔案上傳功能。 <input type = "file"> 通過fo

JSP-實驗:傳值-提交傳遞、獲取資料

JSP-實驗:表單傳值-提交表單並傳遞、獲取資料 說明: 參考連結在最後1 我這個版本執行過,反正沒大問題,但是用參考的那個網頁上的內容,就會出錯……原因也寫在後面了。 實驗 實驗內容: 利用表單傳遞資料,此題目包含01.html、01.jsp

動態建立hidden提交提交

var dlform = document.createElement('form'); dlform.style = "display:none;"; dlform.method = 'post'; dlform.action = '../fileServlet'; dlform.target = 'cal

ajax.BeginForm非同步提交顯示更新資料

1 <!--基本資訊模組--> 2 2 <div class="profile_box" id="basicInfo"> 3 3 <h2>基本資訊</h2> 4 4 5 5

使用formData物件提交上傳圖片

FormData 物件,可以把form中所有表單元素的name與value組成一個queryString,提交到後臺。如果把表單的編碼型別設定為:enctype =‘multipart/form-da

layer關閉視窗觸發提交問題處理

1、前言 表單的程式碼: <form> 此處理程式碼略... <div id="footer"> <button class="btn btn-su

【前端】提交

功能描述 點選某個按鈕後,出現一個彈出框。使用者在彈出框填寫一些資訊之後提交表單。 效果截圖 程式碼 html程式碼 觸發彈出視窗的按鈕 <div class="col-1">

ajax方式提交資料判斷當前註冊使用者是否存在

專案的目錄結構 原始碼: regservlet.java package register; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; imp

使用layer提交時判斷是否輸入為空

使用layer彈窗提交表單時判斷表單是否輸入為空 獲得 layer 檔案包後,解壓並將 layer 整個資料夾(不要拆分結構) 存放到你專案的任意目錄,使用時,只需引入 layer.js 即可 使用時一定他要先引入jq1.8,或者以上版本!!! 下面是提交表單的實列

Android WebView載入HTML通過javascript提交

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

使用SpringMVC 實現RESTful,解決PUT,DELETE請求無法提交資料的問題

瞭解RESTful,使用SpringMVC 實現RESTful 關於REST: 1.表述性狀態轉移,是web服務的一種架構風格,是一種思想,而非標準或軟體。 2. 通常基於使用HTTP,URI,XML、JSON、HTML這些現廣泛流行的協議。 3.屬於輕量級(使

jQuery動態建立提交

$("button").click(function(){ action = "http://www.baidu.com"; form = $("<form></form>") form.attr('a

js動態生成form提交

在提交json資料時,可能會出後臺無法解析資料的bug,碰到這個不要怕,在提交資料前用js轉一下json就好了,下面我寫的程式碼裡有轉json的程式碼,如果只是傳單個數據,就沒必要寫成json格式了。 $("#exceldown").click(function() {

怎樣用js建立Form提交

<script > //js動態建立form 提交表單 function formSubmit(elementValue) {     var turnForm = document.createElement("form");        //一定要加入

動態生成html提交

之前在做一個問卷調查的時候,用到了動態生成html表單,個人感覺,html方式雖然原始,但它是萬能的解決方法。 生成頁查詢資料庫,然後得到泛型,用stringbuilder 生成html程式碼。  1 List<Model.Quest> wtlist =

完美解決layui框架中提交後confirm詢問視窗判斷阻止問題

注意:  $("#changeForm").submit();  與 return false;這兩個是關建中的關鍵! form.on('submit(changePwd)', function(data){ layer.confirm('您確認要提交嗎?', {