2013-08-28 50 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()外的區塊。