Есть ли способ изменить значение текстового узла DOM в веб-браузере?
Я специально хочу посмотреть, могу ли я изменить существующий узел, а не создавать новый.
Чтобы уточнить, мне нужно сделать это с помощью Javascript. Весь текст в браузере хранится в #textNodes, которые являются дочерними элементами других узлов HTML, но не могут иметь собственных дочерних узлов.
Как указано ниже, содержимое можно изменить, задав свойство nodeValue этих объектов.
javascript
dom
dhtml
левик
источник
источник
innerHTML
использовании и поощряетtextContent
использование . ИспользованиеtextContent
отлично работает для меня.Ответы:
Если у вас есть конкретный узел (типа #text) и вы хотите изменить его значение, вы можете использовать свойство nodeValue :
node.nodeValue="new value";
Заметка:
innerText (и
возможноtextContent) вернет / установит текст как для текущего узла, так и для всех дочерних узлов, поэтому поведение, которое вы хотите / ожидаете, может быть не таким.источник
Я считаю, что для этого используется innerHTML ... Опять же, это не одобрено W3C ... но это работает ...
node.innerHTML="new value";
источник
innerHTML
поскольку он обрабатывает код как текст как при чтении, так и при записи.nodeValue
текстовый узел, а не его родительский элемент.