Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.08.2011, 19:11
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

Как присвоить ранее заполненный 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"

Последний раз редактировалось KingStar, 30.08.2011 в 19:22.
Ответить с цитированием
  #2 (permalink)  
Старый 30.08.2011, 19:22
Профессор
Отправить личное сообщение для Триви Посмотреть профиль Найти все сообщения от Триви
 
Регистрация: 23.04.2010
Сообщений: 354

Ты в див добавляешь один и тот же элемент формы.
И с каких пор у элемента <div> вдруг появилось value ?
Ответить с цитированием
  #3 (permalink)  
Старый 30.08.2011, 19:24
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Используйте 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>
Ответить с цитированием
  #4 (permalink)  
Старый 30.08.2011, 21:35
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

Сообщение от Триви Посмотреть сообщение
Ты в див добавляешь один и тот же элемент формы.
И с каких пор у элемента <div> вдруг появилось value ?
Сори, не туда вписал, value='' на input
Ответить с цитированием
  #5 (permalink)  
Старый 30.08.2011, 21:40
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

Сообщение от B@rmaley.e><e Посмотреть сообщение
Используйте 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>


Ты супер, я прям тя влублон ))) Спасибище тебе )))
Ответить с цитированием
  #6 (permalink)  
Старый 30.08.2011, 22:52
Профессор
Отправить личное сообщение для Триви Посмотреть профиль Найти все сообщения от Триви
 
Регистрация: 23.04.2010
Сообщений: 354

Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))
Ответить с цитированием
  #7 (permalink)  
Старый 30.08.2011, 23:15
Профессор
Отправить личное сообщение для ваый Посмотреть профиль Найти все сообщения от ваый
 
Регистрация: 29.06.2011
Сообщений: 445

Сообщение от Триви
Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))
Да какая разница, он же влюблен!
Ответить с цитированием
  #8 (permalink)  
Старый 31.08.2011, 00:49
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

Сообщение от Триви Посмотреть сообщение
Да погоди ты радоваться)) у тебя все инпуты с одним и тем же нэймом))
Как собираешься обрабатывать? ))))
Ошибаешься, они разные, я просто для того, чтобы понятно было в чем проблема их не писал, они объявляются массивом с ключем [], и далее уже обрабатывается в самом массиве )))

Кстате, может кому понадобится, вот так добавляется список 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);

Последний раз редактировалось KingStar, 02.09.2011 в 07:07.
Ответить с цитированием
  #9 (permalink)  
Старый 01.09.2011, 10:57
Новичок на форуме
Отправить личное сообщение для sashavorkov Посмотреть профиль Найти все сообщения от sashavorkov
 
Регистрация: 12.08.2011
Сообщений: 3

или select.options.add(new Option('1-ая строка списка', 'str0'));
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 19:48
Как присвоить текстовому полю исполнение функции? vistecter Элементы интерфейса 2 24.06.2011 19:16
Как в JavaScript присвоить функцию свойству объекта? kokon Общие вопросы Javascript 5 25.05.2010 21:11
Как узнать, присутствует ли в окне полоса прокрутки или нет? возжаждавший Элементы интерфейса 6 12.03.2010 22:00
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 19:56