Я хочу получить все теги "a" со страницы, получить ее атрибут "href" и проверить, есть ли в этом href текст ".pdf". Таким образом, я получаю все a
теги в переменную tags
, затем с помощью функции each()
я проверяю каждое "a" (как tag
). Но код:
if ($(tag).indexOf('.pdf') > 0)
console.log($(tag));
не работает. Почему? Почему я не могу использовать indexOf
на href
? Я попробовал с search()
функцией, но она также не работает.
Так что я подумал - хорошо, что-то не так с этим href
. Давайте рассмотрим это как текст.
Но код:
var text = $(tag).text();
console.log(text);
тоже не работает. Кто-нибудь может сказать мне почему?
Во фрагменте кода намеренно есть ошибки - чтобы показать, с чем у меня проблема.
Заранее спасибо.
(function($){
var tags = $('a');
$(tags).each(function() {
var tag = $(this).attr('href')
if ($(tag).indexOf('.pdf') > 0)
console.log($(tag));
var text = $(tag).text();
console.log(text);
});
}(jQuery));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<html>
<a href="https://www.test.com/example.pdf" target="_blank">Link with ".pdf"</a>
<a href="https://www.test.com/" target="_blank">Link without ".pdf"</a>
</html>