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

0

На моей странице есть ссылка внизу, которую я присвоил идентификатору...

<a id="nbwalink" class="learn-more">
  Learn more
</a>

Выше этого, есть RSS-канал, который я вставляю на страницу, которая выводит его на первую ссылку как...

<div id="rssincl-box-767647">
  <div class="rssincl-content">
    <div class="rssincl-entry">
      <p class="rssincl-itemtitle">
        <a target="_blank" href="http://something.com/somesubfolder/somepage.html">
          Description of Link
        </a>
      </p>

...you get the idea.

Я пытался использовать jQuery вот так...

var nbwahref = $('.rssincl-itemtitle').children('p').eq(0).attr('href');
$('#nbwalink').attr('href',nbwahref);

... чтобы украсть ссылку из ссылки RSS и применить ее кнопку "Подробнее". Есть ли способ сделать это, я не могу заставить его работать? = Т

Теги:
parent-child

3 ответа

1
Лучший ответ

Ваш селектор ошибочен, потому что p не является дочерним элементом элемента rssincl-itemtitle, p является rssincl-itemtitle, вам нужно найти дочерний элемент p элемента

var nbwahref = $('.rssincl-content .rssincl-itemtitle:first a').attr('href');
$('#nbwalink').attr('href',nbwahref);
1

Вы пытаетесь прочитать href из p элемента, который фактически не существует, поскольку .rssincl-itemtitle является p элементом, а его единственным дочерним является a) и который не имел бы href если бы он существовал. Вам нужно прочитать его из элемента a:

var nbwahref = $("div[id^=rssincl-box-]")
                   .first()
                   .find(".rssincl-itemtitle a")
                   .attr("href");
$("#nbwalink").attr("href", nbwahref);

Нарушение этого большого выражения:

  1. Получить div с id начинающимся с "rssincl-box-"
  2. Получить только первый из них
  3. Найти элементы внутри a .rssincl-itemtitle элементов внутри этого одного div
  4. Получить href первого (attr возвращает атрибут только первого совпадения в наборе)
0

Вы попробовали что-то вроде этого?

var nbwahref = $('.rssincl-itemtitle').find('a').eq(0).attr('href');
$('#nbwalink').attr('href', nbwahref);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню