Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   добавление текста в елемент (https://javascript.ru/forum/misc/4565-dobavlenie-teksta-v-element.html)

COKOJIOB 03.08.2009 14:54

добавление текста в елемент
 
не могу понять как это правильно, делается.
я так понимаю что так, ничего не работает:

document.getElementById("elemId").value='text';
или так
document.getElementById("elemId").write('text');

вопрос может и глупый, но всё же..

B~Vladi 03.08.2009 14:56

document.getElementById("elemId").firstChild.nodeValue+='text';

COKOJIOB 03.08.2009 15:01

спасибо, работает.

хотелось бы еще понять принцип работы

B~Vladi 03.08.2009 15:11

Рассмотрим такой HTML-кусок:
<div>First div</div>other text<span>Last child</span>

Здесь дерево DOM будет таким:

-element
---text node
-text node
-element
---text node

element - узел (тег, nodeType==1)
text node - текстовый узел, ребёнок тега (firstChild - первый ребёнок) (nodeType==3)

nodeValue - свойство текстового узла, содержит его значение (текст)
Что бы поменять содержимое тега - innerHTML - содержит html-код узла.

Вобщем, читайте DOM

COKOJIOB 03.08.2009 15:18

понял, спасибо.

по сути нужно обращаться не к самому объекту, а к тексту внутри него.

еще я видел куски кода где вместо value использовано innerHTML, так тоже можно?

B~Vladi 03.08.2009 15:22

Я же вам только что написал...

Чтобы поменять текст тега:
document.getElementById("elemId").childNodes[0].nodeValue='text';


Чтобы поменять HTML-код тега:
document.getElementById("elemId").innerHTML='text';

COKOJIOB 03.08.2009 15:26

Цитата:

Сообщение от B~Vladi (Сообщение 25878)
Я же вам только что написал...

Чтобы поменять текст тега:
document.getElementById("elemId").childNodes[0].nodeValue='text';


Чтобы поменять HTML-код тега:
document.getElementById("elemId").innerHTML='text';

HTML-код тега -это все его атрибуты?

B~Vladi 03.08.2009 15:30

Соколов, ёмаё...

<div id="id">wdewe<b>asdas</b>as<i>da</i>sd</div>

Внимание вопрос: покажите мне html-код тега div.

ЗЫ: если ответ будет неверным - качаем 5 Гб книг по JavaScript и учим, меня не достаём.

COKOJIOB 03.08.2009 15:37

HTML -код это всё что написано между < и >

COKOJIOB 03.08.2009 15:41

всё сам врубился.
что где value теги не отрабатываются.


Часовой пояс GMT +3, время: 09:04.