2013-08-28 49 views
1

我有一个确认对话框出现在表单上,​​当用户点击ok时将用户重定向到另一个页面。JavaScript确认对话框在新窗口中/选项卡

但是,是否有可能有一个网页在新窗口中打开(例如,目标=“_空白”)

,我正在使用的代码是:

var answer=confirm("Do u want to continue?") { 
if (answer==false) { 
document.form.field1.focus(); 
return false; 
} 
window.location.href = "/some/url" 
} 
+0

检查'window.open',但它会是新窗口而不是选项卡。 –

+0

posible重复:http://stackoverflow.com/questions/5141910/javascript-location-href-to-open-in-new-window-tab – udidu

+0

可能重复的[JavaScript在新窗口中打开,而不是选项卡]( http://stackoverflow.com/questions/726761/javascript-open-in-a-new-window-not-tab) –

回答

-1
window.open(
    '/some/url', 
    '_blank' 
); 
1

所以window.location指的是您当前窗口的位置,因此更改它当然会使您远离您所在的窗口。要打开一个新的窗口,你想window.open - 见Open a URL in a new tab (and not a new window) using JavaScript

但是,我反而建议,使用您拦截默认行为如果用户回答错误,否则退回到默认行为的链接。

即:

<a href="/some/url" id="foo">bar</a> 

$('#foo').click(function(e){ 
    var answer=confirm("Do u want to continue?") { 
    if (answer==false) { 
     document.form.field1.focus(); 
     e.preventDefault(); 
    } 
    } 
}); 

虽然我不得不仔细检查,如果实际工作,我还没有确认多少都工作,所以你可能需要调用e.preventDefault()外的区块。