Как сделать текст внутри абзаца с помощью JavaScript
Я пытаюсь получить текст внутри тега Р
<p id="paragraph">Some text</p>
и я хочу сохранить текст в переменной JavaScript, как это
var text = "Some text";
Я прочитал, что я должен добавить
var text = document.getElementById("paragraph").innerHtml;
но значение переменной равно NULL или Undefined, и мне также понравилось это
var text = document.getElementById("paragraph")[0].innerHtml;
и у меня была такая же проблема !
3 ответов
вы используете неправильное имя свойства должно быть innerHTML
(Примечание - чувствительность к регистру HTML
не Html
) не innerHtml
var text = document.getElementById("paragraph").innerHTML
^^^^
вы, вероятно, должны использовать .textContent
чтобы получить текст, чтобы убедиться, что вы не получите дополнительную разметку в переменной текст.
var paragraph = document.getElementById("paragraph");
var text = paragraph.textContent ? paragraph.textContent : paragraph.innerText;//IE uses innerText
innerHTML возвращает HTML, как указывает его имя. Довольно часто для извлечения или записи текста внутри элемента люди используют innerHTML. вместо этого следует использовать textContent. Поскольку текст не анализируется как HTML, он, вероятно, будет иметь лучшую производительность. Кроме того, это позволяет избежать атаки XSS вектор.
https://developer.mozilla.org/en-US/docs/Web/API/Node.textContent