Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Добавление алемента в DOM (https://javascript.ru/forum/misc/10100-dobavlenie-alementa-v-dom.html)

Орёл 19.06.2010 11:26

Добавление алемента в DOM
 
Есть форма создание опросов,по умолчанию есть две формы для вариантов ответа,а я делаю кнопку добавить ещё вариант и после последнего input должен появиться ещё один input и т.д ,всё впринципи работает,но добавляеться input без переноса строки пробовал newelem.innerHTML = '<br />'; , но не выходит,как можно сделать перенос строки,кто знает?


<form action="?action=check&u=addop" method="POST" id="input">
Текст опроса<br />
<input type="text" name="opros" /><br />
Сколько дней идёт опрос<br />
<input type="text" name="time_isset"/><br />
Варианты ответа<br />
<input type="text" name="v[]" /><br />
<input type="text" name="v[]" /><br />


<a href="#" onclick="addop()" class="buttom">Добавить вариант</a>
|
<input type="submit" value="Создать опрос" /><br />
</form>


Функция

function addop()
{
	form1 = document.getElementById('input'); //ID формы
	endlist_count = form1.getElementsByTagName('input').length; // считаем елементы в форме
	endlist =  form1.getElementsByTagName('input')[endlist_count-2]; // узнаём предпоследний input с именем v[]
	
	newelem = document.createElement('input'); // Создаём елемент
	newelem.type = 'text'; // ставим тип
	newelem.name = 'v[]'; // назначаем имя
	
	form1.insertBefore(newelem, endlist) // Добовляем елемент после последнего input с именем v[]
}

рони 19.06.2010 20:34

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<title></title>
<script language="JavaScript" type="text/javascript">
function addop()
{   form1 = document.getElementById('input');
    var add = document.getElementById('add');
    newelem = document.createElement('input');
    newelem.type = 'text';
    newelem.name = 'v[]';
    form1.insertBefore(newelem, add);
    newelem = document.createElement('br');
    form1.insertBefore(newelem, add);
}
</script>
</head>
<body>
  <form action="?action=check&u=addop" method="post" id="input" name="input">
    Текст опроса<br />
    <input type="text" name="opros" /><br />
    Сколько дней идёт опрос<br />
    <input type="text" name="time_isset" /><br />
    Варианты ответа<br />
    <input type="text" name="v[]" /><br />
    <input type="text" name="v[]" /><br />
    <a href="#" id="add" onclick="addop()" class="buttom" name="add">Добавить вариант</a> |
    <input type="submit" value="Создать опрос" /><br />
  </form>
</body>
</html>

Орёл 19.06.2010 20:44

Большое спасибо:)


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