Я работаю над программой JS, которая должна открыть веб-страницу www.mysite.com & нажмите на ссылку внутри этой веб-страницы, чтобы загрузить pdf-файл. Ссылка на кнопку выглядит следующим образом:Javascript: Нажмите ссылку для загрузки pdf
<a onclick="download();return false;" href="#noWhere">Click to Download</a>
Обычно вручную, нажав на ссылку, вызывает следующую функцию для загрузки PDF:
function download() {
document.forms[0].action = path + "/xxW04_sv_0140Action.do";
document.forms[0].target = "_self";
document.forms[0].submit();
}
Мой код упрощена Javascript код, чтобы открыть страницу & нажмите на «нажмите для загрузки» кнопка это:
<script>
var linkname = "http://www.mysite.com";
var windowname = "window_1"
// Opens a new window
var myWindow = window.open(linkname, windowname ,"width=400,height=600");
//should open a link to download pdf
myWindow.document.getElementById('href = \"#noWhere\"').click();
</script>
до сих пор я могу открыть веб-страницу «mysite.com» в отдельном окне нас но по какой-либо причине не происходит нажатия кнопки, и, конечно же, не загружается pdf. Конечно, если я вручную нажму кнопку «Нажмите, чтобы загрузить», она будет загружена.
Может ли кто-нибудь сказать мне, что я делаю неправильно? Почему я не могу имитировать щелчок с указанным выше кодом js?
Или, возможно, попробуйте некоторые вещи. Любая помощь очень ценится и чем вы.
ОБНОВЛЕНИЕ: Из первых ответов ниже, возможно, этот метод обречен на провал! Может ли кто-нибудь предложить лучший способ, которым я мог бы загружать эти pdf-файлы?
Вы не можете нажимать на сайты с помощью javascript, если они не находятся в том же домене, что и ваш скрипт. Почему вы не можете просто скопировать URL-адрес .pdf в свой скрипт? – Adassko
getElementById ('href = \ "# noWhere \"') не будет работать. Строка, которую вы передаете этому методу, не является идентификатором. Вы должны использовать querySelectorAll – kamilkp
@kamilkp, я думал, что getElementById ('href = \ "# noWhere \"') может быть длинным, но thre не является id как таковым в ссылке. Вы видите какой-либо другой способ идентифицировать эту ссылку? Как использовать «querySelectorAll»? – arpeggio