Подтвердить что ты не робот

Window.open с целевой "_blank" в Chrome

У меня есть небольшая функция javascript, которая открывает URL-адрес на новой вкладке:

function RedirectToPage(status) {
   var url = 'ObjectEditor.aspx?Status=' + status;
   window.open(url , '_blank');
}

Это всегда работает, когда вызывается клиентской стороной, нажимая кнопку, даже в хром. Но в Chrome он не будет работать, когда он вызывается с серверной стороны (!), Используя

ScriptManager.RegisterClientScriptBlock()

В Firefox и IE он открывает URL-адрес на новой вкладке, но chrome открывает URL-адрес в новом окне. Что может быть обходным путем, чтобы заставить Chrome открыть его на новой вкладке?

4b9b3361

Ответ 1

Это настройка в хром. Вы не можете контролировать, как браузер интерпретирует цель _blank.

Ответ 2

"_ blank" не гарантируется новая вкладка или окно. Он реализован по-разному для каждого браузера.

Однако вы можете помещать что-либо в цель. Обычно я просто говорю "_tab", и каждый браузер, который я знаю, просто открывает его на новой вкладке.

Помните, что это означает, что это именованная цель, поэтому, если вы попытаетесь открыть 2 URL-адреса, они будут использовать одну и ту же вкладку.

Ответ 3

Вы не можете сделать это, потому что у вас не может быть контроля над тем, как Chrome открывает свои окна.

Ответ 4

Как говорит Деннис, вы не можете контролировать, как браузер выбирает обработать target = _blank.

Если вам интересно о непоследовательном поведении, возможно, это всплывающее блокирование. Многие браузеры запрещают открывать новые окна по поводу ничего, но позволят создавать новые окна в качестве конечного результата события щелчка мыши.

Ответ 5

window.open(skey, "_blank", "toolbar=1, scrollbars=1, resizable=1, width=" + 1015 + ", height=" + 800);