window.open()方法写在ajax回调方法里,会出现问题。问题现象是新打开的页面一段时间后就自动关闭。源代码如下
$.get(url,{ran:Math.Random()},successed);
function successed(data){
window.open("url?id=" + data.id );
}
网上查了好多资料,都说是在服务端用window.open弹出窗口会被IE阻止掉。而通过我们用鼠标点击弹出的窗口,它是不会阻止的。解决办法一,在jsp定义一个隐藏按钮,把window.open方法写在这个隐藏按钮的click事件中,在ajax回调方法里间接调用这个click事件。
jsp
<input type="button" id="hiddenButton" onclick="openNewPage()"/>
js
function openNewPage(){
window.open("url");
}
function successed(data){
$("#hiddenButton").trigger("click");
}
此解决方法还是不行。
解决办法二:
ajax 设置为同步,代码如下
var data = null;
$.ajax({
type: "POST", url: path,
async:false,
success:function(result){
data = result;
},
error:function(XmlHttpRequest,textStatus, errorThrown){
data={exception:{message:XmlHttpRequest.responseText}};
}
});
if(!data && !data.exception){
window.open("url?id=" + data.id);
}
分享到:
相关推荐
当在网页中用javascript winow.open 打开一个新窗口后,是否能在你窗口中调用并执行新窗口中的代码或调取其中的元素? 答案是肯定的。 这段示例代码不但能在父窗口页面test.html中执行被打开的新窗口页面test-open...
当在网页中用javascript winow.open 打开一个新窗口后,是否能在父窗口中调用并执行新窗口中的代码或调取其中的元素? 答案是肯定的。 这段示例代码不但能在父窗口页面test.html中执行被打开的新窗口页面test-open...
这里定义了`openwin`函数,当页面加载时,`onload`事件会触发函数执行,从而打开新窗口。 ### 4. 多窗口弹出 如果你需要同时打开多个窗口,只需对`window.open()` 方法进行多次调用,每个调用之间用分号隔开。例如...
它不仅能够打开新窗口,还可以控制新窗口的属性,如大小、位置以及是否显示工具栏、菜单栏等。本文将深入解析`window.open()`函数的各个参数及其用法。 #### 函数基本结构 `window.open`函数的基本调用格式如下: ...
1. **用户交互**:如果`window.open()`是在用户没有直接交互的情况下调用(例如页面加载时自动弹出),那么大多数浏览器都会阻止它。 2. **权限设置**:用户可以在浏览器设置中关闭弹出窗口的功能。 3. **安全策略**...
这里定义了一个 `openwin` 函数,并在 `<body>` 标签的 `onload` 事件中调用它,使得页面加载完毕后自动打开新窗口。 #### 示例 3: 同时打开多个窗口 ```javascript function openwin() { window.open("page.html"...
在某些场景下,可能需要同时打开多个窗口,只需要在一个函数中多次调用 `window.open` 方法即可。例如: ```javascript <!-- function openwin() { window.open("page.html", "newwindow", "height=100,width=...
在JavaScript编程中,`window.open()` 是一个非常实用的函数,用于在浏览器中打开新的窗口或者标签页。这个函数在Web开发中常用于创建新窗口、弹窗等场景,尤其在用户交互和导航中占据重要地位。在本例中,我们将...
`window.open()`是Window对象的一个方法,用于打开新的浏览器窗口。该方法的基本语法如下: ```javascript window.open(url, target, features); ``` - **参数**: - `url`:要加载到新窗口的文档URL。 - `...
根据给定的代码片段和描述,“open关闭子页面刷新父页面”这一主题涉及到的关键知识点主要包括:使用JavaScript打开新窗口、父窗口与子窗口之间的通信,以及通过特定事件触发父窗口的刷新。 ### 使用JavaScript打开...
在网页开发中,`window.open` 方法是用于打开新窗口或标签页的一个非常实用的功能。此方法常被用在各种场景下,例如:弹出广告、登录框、信息提示等。 #### 方法语法 ```javascript window.open(url, target, ...
如果你希望弹出的窗口在一段时间后自动关闭,可以在弹出的页面中添加JavaScript代码来实现。例如,以下代码将在10秒后关闭窗口: ```html function closeit() { setTimeout("self.close()", 10000); // 毫秒 } ...
在JavaScript编程中,`window.open()` 是一个非常重要的方法,用于在浏览器中打开新的窗口或标签页。在给定的代码示例中,这个方法被巧妙地与`if`语句嵌套结合使用,实现了一个交互式的用户界面功能。下面我们将详细...
在JavaScript编程中,`window.open()` 是一个非常实用的函数,用于打开新的浏览器窗口或者重定向现有的窗口。然而,由于防止弹窗广告的用户友好性考虑,大多数浏览器会对直接调用 `window.open()` 的行为进行拦截。...
这个方法会在浏览器尝试打开新窗口之前被调用。我们可以在该方法中判断是否需要在新窗口中打开链接,或者改为在当前窗口或新的标签页中打开。 以下是一个基本的示例代码片段,展示了如何在`OnBeforePopup`中处理新...
这主要是通过`window.open()` JavaScript API实现的,它允许开发者在当前窗口打开新的页面或者在新的窗口中打开页面。为了使Chrome能够调用IE,开发者可以编写JavaScript代码,检测当前浏览器是否为Chrome,并根据...
总之,“自动关闭ie的弹出窗口”涉及到使用C#的WebBrowser控件和JavaScript交互,通过监听和修改页面脚本来实现这一功能。在实际应用中,应考虑到兼容性和安全性,确保不影响正常网页功能的同时,有效地阻止不期望的...
当在网页中用javascript winow.open 打开一个新窗口后,是否能在父窗口中调用并执行新窗口中的代码或调取其中的元素? 答案是肯定的。 这段示例代码不但能在父窗口页面test.html中执行被打开的新窗口页面test-open...
在我们的场景中,我们希望在一段时间后自动关闭网页,因此我们可以将`window.close()`方法放入`setTimeout`的回调函数中。但是,直接使用`window.close()`会引发浏览器的确认对话框,询问用户是否真的要关闭窗口。...