1. 程式人生 > >IE11中使用window.open()方法獲取不到引數解決方法

IE11中使用window.open()方法獲取不到引數解決方法

在父頁面中使用window.open()的方法開啟
<pre class="javascript" name="code">   var selectUrl = USER_SELECT_URL + params.join("&");
  
  var windowName = "PersonSelect";
  
  var openWindow = window.open(selectUrl,windowName, "xxxx");
  
  openWindow.result = resultName;

子頁面中獲取父頁面中的引數:

            if (window["result"] && window["result"] != "") {
            var allRecords = store.getRange(0, store.getCount());
            
            var data = [];
            for (var i = 0; i < allRecords.length; i++) {
                data.push(allRecords[i].data);
                historyArray.push(allRecords[i].data.type + ":" + allRecords[i].data.id);
            }
            
            var str = JSON.stringify(data);
            
            opener.window[result] = str;

使用程式碼之後發現很奇怪,IE8可以獲取到window["result"] ,IE9沒測試,Chrome也可以獲取到,但是IE11永遠報屬性未定義,完全不能理解為什麼。

window["result"] ,window.result  全都是未定義。然後返回值就更加取不到了。。。

最後改用了window.shoModalDialog()方法,就可以搞定了。

  var selectUrl = USER_SELECT_URL + params.join("&");
  var windowName = "PersonSelect";
  var openWindow = window.showModalDialog(selectUrl,windowName,"xxxx");

子頁面中使用

		var str = JSON.stringify(returnValue);
		window.returnValue = str; // 作為父視窗window.showModalDialog的返回值
		window.close();
就妥妥的了,openWindow就是子頁面的returnValue。


   

相關推薦

WindowsNginx配置nginx.conf生效解決方法

ps:      樂優商城的圖片上傳中遇到的坑,nginx.conf一直沒有生效,折磨了幾個小時,終於搞定了。 附 nginx.conf: #user nobody; worker_processes 1; #error_log lo

【轉】模式視窗window.open造成Session丟失的解決方法

【轉自】http://hi.baidu.com/afawwb/blog/item/f892cb50b84cd26684352459.html 從 HTML 模式或無模式對話方塊可能沒有開啟同一程序中 InternetExplorer 視窗中開啟,因此模式視窗中呼叫 wind

模式視窗window.open造成Session丟失的解決方法

從 HTML 模式或無模式對話方塊可能沒有開啟同一程序中 InternetExplorer 視窗中開啟,因此模式視窗中呼叫 window.open()方法開啟具體頁面,可能造成session 丟失.例如:主窗體a.asp

IE11使用window.open()方法獲取引數解決方法

在父頁面中使用window.open()的方法開啟 <pre class="javascript" name="code"> var selectUrl = USER_SELECT_URL + params.join("&"); var

springMvc 完美解決 multipart/form-data 方式提交請求 在 Filter ServletRequest.getParameter方法 獲取引數的問題

本文 只講使用不過多闡述原理(因為我也沒太深究),希望有熟知原理的朋友不吝分享 下面開始。 ------------------------------------------------------------------------------ 無聊的前言  但是還是得

java GUIJTextField的requestFocus()方法獲取到焦點

眾所周知,JFrame.pack()方法為適應螢幕大小的方法,所以,requestFocus()方法必須要在pack()方法之後呼叫,不然就會失效。 下面說說我經常用到的java gui中的一些方法吧! 1.JPanel.setBorder(BorderFactory.cr

javascriptwindow.open()與window.location.href

javascrip 定位 page 說過 函數 cnblogs 忘記 logs glin 1.window.location是window對象的屬性,而window.open是window對象的方法    window.location是你對當前瀏覽器窗口的URL地址

Eclipse ADT的logcat顯示解決方法

任務 tool 界面 .com exe www 查看 嘗試 and Eclipse ADT中的logcat不顯示解決方法: 1.在Eclipse界面中找到DDMS,然後找到device選項卡,在這個選項卡中選擇reset adb,如果不行嘗試方法2; 2.不用關閉eclip

vue2.0 element-uiel-upload的before-upload方法返回false時submit()生效解決方法

tip child 是我 pre gre 調用 2.0 技術 lis 我要實現的功能是在上傳文件之前校驗是否表格中存在重復的數據,有的話,需要彈窗提示是否覆蓋,確認之後繼續上傳,取消之後,就不再上傳。 項目中用的element-ui是V1.4.3 <el-upload

Windows時間同步時出錯|獲取Internet時間 解決方法

在設定中點選Internet時間設定然後點選立即更新時顯示同步失敗 解決方法 開啟服務,找到Windows Time 點選(重新)啟動,如果可以啟動那麼就成功了 如果沒有成功啟動服務,顯示: 此服務的賬戶不同於運行於同一程序上的其他服務賬戶 那麼繼續向下看 右鍵點

django django的HTML控制元件及引數傳遞方法 以及 HTML form 裡的資料是怎麼被包成http request 的?如何在瀏覽器裡檢視到這些資料? 從HTML form submit 到 django response是怎麼完成的

  https://www.jb51.net/article/136738.htm django中的HTML控制元件及引數傳遞方法 下面小編就為大家分享一篇django中的HTML控制元件及引數傳遞方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

window.open()開啟頁面的幾種方法

[javascript]   view plain  copy 主要原理:讓瀏覽器以為是使用者主動點選的,因此可以利用onclick或者利用<a>標籤的_blank屬性開啟頁面&nbs

$('selector').serialize()方法獲取到表單資料的錯誤

serialize() 方法通過序列化表單值,建立 URL 編碼文字字串。 例如:user=admin&password=admin&verify=abcd; 可以選擇一個或多個表單元素(比如 input 及/或 文字框),或者 form 元素本身。 序列化的值可在生成 AJ

PageHelper在springboot生效解決方法

原因: mava引入的包為: <dependency>             <groupId>com.github.pagehelper</groupId>             <artifactId>pagehel

示例Express路由規則及獲取請求引數

本次給大家分享一篇基於express中路由規則及獲取請求引數的方法,寫的十分的全面細緻,具有一定的參考價值,對此有需要的朋友可以參考學習下。如有不足之處,歡迎批評指正。 express中常見的路由規則 主要使用的路由規則是get和post兩種,即 var express = requir

Axios請求 window.open本攔截直接走 catch方法 處理(IOS系統處理)

按照慣例,我們得先找一下 有沒有已經解決的方法 然後 一頓搜尋,發現全都是 Ctrl + C,Ctrl + V的 部落格, 統統都是 如下方法: 連標點符號都沒變,嘿,mdzz //在axios傳送之前就開啟一個空白的新視窗 var newPage = window.open()

ServletRequest HttpServletRequest 請求方法 獲取請求引數 請求轉發 請求包含 請求轉發與重定向區別 獲取請求頭欄位

ServletRequest 基本概念 JavaWeb中的 "Request"物件  實際為   HttpServletRequest  或者  ServletRequest,   兩者都為介面 伺服器接收請求後,將請求資料進行物件封裝 功能大致分類

在函式‘main’: 警告: 隱式宣告與內建函式‘printf’相容解決方法

1.編譯yiwei.c檔案為可執行檔案出現如下錯誤: 2. 通過查詢函式的呼叫關係,可以得知:是在函式的中缺少了標頭檔案:#include <stdio.h> 3.假如再報類似編譯告警,一定要首先檢視是否缺少了標頭檔案

Docker for Windows在windows系統安裝成功解決方法

需要登入下載,自己註冊一個賬號即可。 安裝失敗的可以參考下面的方式來解決方法 1、檢查Windows版本是否支援Hyper-V,可以在控制面板中啟用此功能。 2、如果沒有需要通過命令來安裝Hyper-V,前提是需要解除安裝掉系統裡面的虛擬機器如:VMWare或Ora

pandas能在pycharm使用plot()方法顯示影象的解決方法

最近用了pycharm,感覺還不錯,就是pandas中Series、DataFrame的plot()方法不顯示圖片就給我結束了,但是我在ipython裡就能畫圖 以前的程式碼是這樣的 import m