Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Как присвоить ранее заполненный value (https://javascript.ru/forum/extjs/21156-kak-prisvoit-ranee-zapolnennyjj-value.html)

KingStar 30.08.2011 20:11

Как присвоить ранее заполненный value
 
В очередной раз всех приветствую. Прошу в помощи гуру JavaScript.

Имеется форма с динамически добавляемыми input-ми и select-ми, при добавлении одного объекта выбираю значение, но затем при добавлении нового объекта значение первого сбрасывается, т.е. получается при вставке каждого из, приходится по новой заполнять, как этого избежать???

вот здесь вставляю:

<a href=javascript:add_text>Добавить текстовое поле</a>

<div id='text' name='result' value='' ></div>


так вставляю:

function add_text(a){ 
document.getElementById('text').innerHTML+='&nbsp;<input type=text name=result class=textbox size=20/>'; 
}


Сори, не глянул раздел, если можно - перенесите в "Элементы интерфейса" либо "Events/DOM/Window"

Триви 30.08.2011 20:22

Ты в див добавляешь один и тот же элемент формы.
И с каких пор у элемента <div> вдруг появилось value ?

B@rmaley.e><e 30.08.2011 20:24

Используйте appendChild
<a href=javascript:add_text()>Добавить текстовое поле</a> 
  
<div id='text' name='result' value='' ></div>

<script>
function add_text(a){  
  var input = document.createElement('input');
  input.type = 'text';
  input.name = 'result';
  input.className = 'textbox';
  input.size = 20;
  document.getElementById('text').appendChild(input);  
}
</script>

KingStar 30.08.2011 22:35

Цитата:

Сообщение от Триви (Сообщение 123644)
Ты в див добавляешь один и тот же элемент формы.
И с каких пор у элемента <div> вдруг появилось value ?

Сори, не туда вписал, value='' на input

KingStar 30.08.2011 22:40

Цитата:

Сообщение от B@rmaley.e><e (Сообщение 123646)
Используйте appendChild
<a href=javascript:add_text()>Добавить текстовое поле</a> 
  
<div id='text' name='result' value='' ></div>

<script>
function add_text(a){  
  var input = document.createElement('input');
  input.type = 'text';
  input.name = 'result';
  input.className = 'textbox';
  input.size = 20;
  document.getElementById('text').appendChild(input);  
}
</script>



Ты супер, я прям тя влублон ))) Спасибище тебе )))

Триви 30.08.2011 23:52

Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))

ваый 31.08.2011 00:15

Цитата:

Сообщение от Триви
Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))

Да какая разница, он же влюблен! :D

KingStar 31.08.2011 01:49

Цитата:

Сообщение от Триви (Сообщение 123707)
Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))

Ошибаешься, они разные, я просто для того, чтобы понятно было в чем проблема их не писал, они объявляются массивом с ключем [], и далее уже обрабатывается в самом массиве )))

Кстате, может кому понадобится, вот так добавляется список select:

var select = document.createElement('select');
  select.name = 'name[]';
  select.className = 'textbox';
	select.options[0] = new Option('1-ая строка списка', 'str0');
	select.options[1] = new Option('2-ая строка списка', 'str1');
	select.options[2] = new Option('3-ая строка списка', 'str2');
  document.getElementById('div_id').appendChild(select);

sashavorkov 01.09.2011 11:57

или select.options.add(new Option('1-ая строка списка', 'str0'));


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