Запустите загрузку на той же вкладке, не открывая новую вкладку или окно в Javascript - программирование
Подтвердить что ты не робот

Запустите загрузку на той же вкладке, не открывая новую вкладку или окно в Javascript

Я использую эту функцию javascript для запуска загрузки

function startDownload(url) {
   window.open(url, 'Download');
}

Он работает, но я хочу заблокировать любую новую вкладку или запуск нового окна, спасибо.

4b9b3361

Ответ 1

function startDownload(url) {

    window.location.href = url;
}

Это запустит загрузку на той же странице, точно так же, как при нажатии ссылки без какой-либо цели, кроме _self.

Чтобы принудительно загрузить файл, убедитесь, что вы отправили ему правильные заголовки:

Content-Disposition: attachment; filename="mypdf.pdf";

Это позволит убедиться, что файл не отображается в браузере, а не загружается. Замените часть имени файла именем файла, которое вы хотите по умолчанию, в диалоговом окне save as.

Ответ 2

window.open откроет новое окно \tab (в зависимости от настроек пользователя)... чтобы просто загрузить файл

window.location.href = url;

Вы можете использовать это, если url возвращает загружаемый файл, а не веб-страницу

Ответ 4

<a target="_parent" href="link"></a>

_blank - URL загружается в новое окно. _Parent по умолчанию - URL загружается в родительский фрейм _self - URL заменяет текущую страницу _top - URL заменяет любые фреймы, которые могут быть загружены name - Имя окна