#javascript #anchor
#javascript #привязка
Вопрос:
Я хочу получить содержимое тега привязки
<a id="1"><span class="italic">Hello There It Is Italic Text</span></a>
однако, когда я использую следующий код JS
var resultData = document.getElementById("1").inneHTML;
console.log(resultData);
что я получу, так это
<span class="italic">Hello There It Is Italic Text</span>
в качестве результирующих данных
где, поскольку я хочу, чтобы результирующие данные были «Привет, это курсивный текст«, потому что я хочу использовать resultData где-то еще
в некоторых случаях даже может быть несколько тегов span, таких как
<a id="2"><span class="italic"><span class="highlight">Hello There It Is Italic Text</span></span></a>
или
<a id="3"><span class="italic">Hello There It Is <span class="highlight">Italic</span> Text</span></a>
Поэтому я хочу, чтобы результирующие данные были «Привет, это курсив» во всех случаях.
То, что я хочу, — это чистое содержимое тега привязки без какого-либо дочернего тега.
Можно ли этого достичь с помощью чистого Javascript, если да, то как
Пожалуйста, помогите
Ответ №1:
Получить textContent
свойство элемента.
console.log(
document.getElementById('1').textContent,
document.getElementById('2').textContent,
document.getElementById('3').textContent
)
<a id="1"><span class="italic">Hello There It Is Italic Text</span></a>
<a id="2"><span class="italic"><span class="highlight">Hello There It Is Italic Text</span></span></a>
<a id="3"><span class="italic">Hello There It Is <span class="highlight">Italic</span> Text</span></a>
Комментарии:
1. Большое вам спасибо, вы действительно спасли мой день
2. @KaranParikh: рад помочь 🙂
Ответ №2:
Для извлечения текста, а не всей разметки, вы должны использовать textContent
, не innerHTML
.