2013-08-28 5 views
1

У меня есть диалоговое окно подтверждения, появившееся в форме, которая перенаправляет пользователя на другую страницу при нажатии на ok.Диалог подтверждения JavaScript в новом окне/вкладке

Однако, это возможно, чтобы иметь эту страницу открыть в новом окне (например, цель = «_blank»)

код, который я использую:

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

Возможный дубликат: 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.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() вне этого блока.