Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   добавление дочернего элемента (https://javascript.ru/forum/misc/21175-dobavlenie-dochernego-ehlementa.html)

stalker77 31.08.2011 14:53

добавление дочернего элемента
 
Необходимо, чтоб по нажатию кнопки добавилась ниже существующей еще одна "textarea". Написал такой код:

<html>
<head>
<title>добавление элемента
</title>
<script language="JavaScript">
function addElement()
{
var element = document.getElementById('name');
element.appendChild(element);
}
</script>
</head>
<body>
<table>
<tr>
<td>Увлечения, хобби: </td>
<td >
<div id="name">
<textarea name="HOBBI" cols="30" rows="7"></textarea>
</div>
<input type="button" value="Добавить" onclick="addElement()"/>
</td>
</tr>
</table>
</body>
</html>
но скрипт не работает. в чем тут ошибка?

Триви 31.08.2011 15:02

var element = document.getElementById('name');

<textarea name="HOBBI" cols="30" rows="7"></textarea>

stalker77 31.08.2011 15:32

не понял честно говоря, я новичок в web-программировании.

getElementById('name') относится к тегу div

melky 31.08.2011 15:48

попробуйте так

var element = document.getElementsByName('HOBBI')[0];


и вообще, раз вы новичок, то рекомендую к прочтению соответствующую статью

popov654 31.08.2011 20:34

Народ, ну элементарный же вопрос... :) Дать ссылку человеку - это конечно хорошо, но ответить тоже не жалко)
Отвечаю: сначала создайте элемент
var newElem = document.createElement('textarea')

А потом уже делайте
element.appendChild(newElem);

melky 31.08.2011 21:58

Цитата:

Сообщение от stalker77 (Сообщение 123836)
Необходимо, чтоб по нажатию кнопки добавилась ниже существующей еще одна "textarea". Написал такой код:

function addElement(){
var element = document.getElementsByName('HOBBI')[0].cloneNode(false);
element.appendChild(element);
}


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