Jump to content

Извлекаю с помощью javascript текст из тега


Recommended Posts

Всем привет! Извлекаю с помощью javascript текст из тега, а он не извлекается. Почему?

 

Вот исходник:

<span class="value" title="nazvanie">1111111111111₽</span>

 

Пытаюсь этим кодом извлечь, а ничего не выходит в алерте:

var span = document.getElementsByClassName("value");
for (var i = 0; i < span.length; i++)
alert(span.innerHTML);

Link to post
Share on other sites

Забудьте про js ванильный, пишите на jquery хоть он уже устаревает но это удобно

var abc = $('.value').html();

alert(abc);

зачем вы делаете разбор ? Если у вас несколько элементов с одинаковым классом то используйте метод this

 var abc = $(this).closest('.родитель').find('.value').html();

alert(abc);

тогда в алерт попадет именно тот по которому было событие 

 

 

Link to post
Share on other sites

А смысл писать на голом js, в чем глупость, 80% js это сейчас jquery

смысл писать на чистом js? да он исполняется на стороне клиента, но скорость написания кода в разы меньше. Удобство и простота конструкции. уже года 4 не видел чистого js нигде в каком проект не заходил бы. более того скоро нативный заберет все

Link to post
Share on other sites
  • Administrators

Чем 'чистый'js от 'нативного' отличается? :D

17 минут назад, kuzovbmw сказал:

скорость написания кода в разы меньше

Ознакомься на досуге - http://youmightnotneedjquery.com/ :)

К слову, в моём мире почему-то чисто js - 99%. И где-то 1% - jquery 

Link to post
Share on other sites

смысл, это уже видел 100 раз. jquery как был самым популярным фреймворком js так им на ближайшие лет 5 останется и на 5 прошлые. написание кода короче, быстрее, особенно удобно когда много ajax запросов вложенных + когда много анимации на странице 

Это называется экономия на спичках, типа тормозит и тп, jquery как был короче так им и стал, да не спорю, базу js надо знать, т.к. частично синтаксис jquery схож. но все равно работать с jquery быстрее

Кто то недавно орал что flexbox это полный г и тп, это был человек кто привык к табличной и верстке на флотах, кто то орет что бутстрап плохой, зато проекты на нем делают в 3 раза быстрее и более отзывчивые если им уметь хорошо управлять, а в 5 версии так вообще все чикаго... Кто то говорит что чистый php это круто я так же скажу, т.к. привык к паттерну mvc и чистому коду, а по факту а понимаю что тот же Zend в разы лучше, начиная от роутинга, заканчивая безопасностью данных, несмотря что я везде использую pdo 

кто на чем привык тот на том и пишет. вопрос реальной оптимизации скорости работы. Вы же Эммит используете наверное, я его везде использую, ну а кто то говорит мне проще руками блок написать а я за li*5 делаю 5 лишек) а кто то руками сидит пишет <li></li> кому скорость. кому писать как удобно, я за скорость и удобство поддержки с минимум кода

Link to post
Share on other sites
  • Administrators
5 минут назад, kuzovbmw сказал:

смысл, это уже видел 100 раз. jquery как был самым популярным фреймворком js так им на ближайшие лет 5 останется и на 5 прошлые.

пора выйти из бункера - https://trends.google.com/trends/explore?q=jquery,js,javascript

Link to post
Share on other sites
4 hours ago, kuzovbmw said:

Забудьте про js ванильный, пишите на jquery хоть он уже устаревает но это удобно


var abc = $('.value').html();

alert(abc);

зачем вы делаете разбор ? Если у вас несколько элементов с одинаковым классом то используйте метод this


 var abc = $(this).closest('.родитель').find('.value').html();

alert(abc);

тогда в алерт попадет именно тот по которому было событие 

Прошу объяснить мне как подключить jquery к веб-странице, которая открыта в браузере и выполнять этот код с помощью ввода в адресной строке браузера. Я всегда в javascript так работал, а это не знаю как делать.... Ввел в адресной строке браузера первый код и получил в алерте undefined

 

 

Link to post
Share on other sites

kuzovbmw,

Прошу объяснить мне как подключить jquery к веб-странице, которая открыта в браузере и выполнять этот код с помощью ввода в адресной строке браузера. Я всегда в javascript так работал, а это не знаю как делать.... Ввел в адресной строке браузера первый код и получил в алерте undefined

 

Link to post
Share on other sites
  • Administrators
3 минуты назад, trusty сказал:

похоже этот код во фрейме и наверное из-за этого первый код  не сработал?

если нужно вытащить текст из iframe, то указанный мной код не сработает. Да и любой другой, думаю, тоже.

Link to post
Share on other sites
Just now, DevilStar said:

если нужно вытащить текст из iframe, то указанный мной код не сработает. Да и любой другой, думаю, тоже.

ну как же так неужели нет никакого способа извлечь текст. не может быть

Link to post
Share on other sites
  • Administrators

https://www.w3schools.com/howto/howto_js_element_iframe.asp

что-то типа такого городить. Уже вечер, мне лень проверять. Браузеры в последнее время сильно парятся из-за безопасности.

Link to post
Share on other sites

Послушайте 

у вас должно быть событие чтобы вытащить текст из блока

это может быть событие полной загрузки дом дерева, событие клика, действия мыши или кей ап

вот вам пример 

https://jsfiddle.net/9xa82dup/

т.е. при клике на класс value срабатывает функция, которая вызывает alert вот и все

если вам необходимо чтобы чтобы это было при загрузке страницы, то тут нужно вызвать событие полной загрузки 

$( document ).ready(function() {
    console.log( "я существую братан!" );
});

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...