我在堆栈溢出上找到了另一个线程:window.open popup getting blocked during click event。最重要的答案似乎解决了这个问题。但我对JavaScript不太了解。
你能帮我根据答案重写代码吗?
1)在调用window.open之前调用$.ajax并保存窗口引用:
var newWindow = window.open(...);2)在回调集位置属性上保存的窗口引用:
newWindow.location = url;也许它已经以一种明确的方式。但我不知道怎么重写代码。
发布于 2012-07-26 13:21:04
好吧,考虑到你所联系的问题的背景,它应该是这样的:
var newUrl = 'http://example.com';
var newWindow = window.open('', '_blank');
$.ajax({
type: "POST",
url: form_url,
dataType: 'json',
data: form_data,
success: function(data) {
newWindow.location = newUrl;
}
});当然,您必须修改$.ajax调用(特别是url和data )以满足您的需求。
https://stackoverflow.com/questions/11669048
复制相似问题