Переход по URL-адресу с помощью JavaScript

Есть ли способ перейти по URL-адресу в JavaScript без настройки document.location.href?

У меня есть страница, на которой отображается список объектов, и с каждым объектом может быть связана загрузка файла, доступ к которому осуществляется через гиперссылку. Щелчок по ссылке инициирует запрос AJAX, который в конечном итоге приводит к созданию временного файла, на который можно ссылаться по уникальному и временному URL-адресу.

В момент завершения вызова AJAX он просто устанавливает для document.location.href временный URL-адрес, и начинается загрузка файла. Конечно, это имеет побочный эффект изменения URL-адреса в адресной строке браузера, поэтому, если страница обновляется, файл загружается снова, а не обновляется сама страница со списком объектов. Думаю, я мог бы вернуть URL-адрес обратно к тому, что было раньше, но это кажется немного взломанным.

Между прочим, я использую фреймворк Prototype JavaScript.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
1 358
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

вы могли бы открыть новое окно с новым URL-адресом? или попробуйте установить URL-адрес iframe на новый URL-адрес, оба должны представлять загрузку файла (последний вариант является лучшим)

Создание нового окна и загрузка этого URL-адреса в это окно - хорошая идея. Я почти уверен, что большинство браузеров автоматически закроют всплывающее окно, как только поймут, что это не HTML-файл.

Kibbee 27.11.2008 23:14

На самом деле я пробовал этот подход в прошлом, и, к сожалению, вы получаете неприятную вспышку, когда появляется всплывающее окно. Похоже, что iframe - лучший вариант.

John Topley 27.11.2008 23:38

Вы можете использовать скрытый iframe - установите src для файла для загрузки.

Если вы делаете все это только для запуска загрузки файла, это звучит как хорошее приложение для использования скрытого iframe. Вместо этого установите SRC iframe, чтобы вам не пришлось возиться с главной страницей.

Другие вопросы по теме