我是靠谱客的博主 友好苗条,最近开发中收集的这篇文章主要介绍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。







最后

以上就是友好苗条为你收集整理的IE11中使用window.open()方法获取不到参数解决方法的全部内容,希望文章能够帮你解决IE11中使用window.open()方法获取不到参数解决方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部