Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / HTML, JavaScript, VBScript, CSS Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
Здравствуйте!

Спасайте, горю. Вроде бы и задача не сложная, но потерялся что-то.
Есть динамически создаваемый набор полей типа text с именами от idN до idNN. Значение N может быть произвольным.

Мне необходимо
1. Получить значения каждого элемента
2. Построить итоговое выражение типа 'idN = его значение

Подскажите, плиз, как это сделать

П.С.: Все элементы находятся в форме
28 сен 11, 09:37    [11345913]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
Foxter, так имена или ИД?
28 сен 11, 09:40    [11345935]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
krvsa,
id = "idN"
28 сен 11, 09:45    [11345973]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
Foxter
Подскажите, плиз, как это сделать

Вообще-то, притаком раскладе, тебе нужно делать тестовый пример... Но как вариант:

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<style type="text/css">
</style>
<script type="text/javascript">
function Go() {
	var o=$('#myfrm input[type="text"]')
	var i,str='',d=''
	for (i=0; i<o.length; i++) {
		if (o[i].id.substring(0,2)!='id') continue
		str+=d+o[i].id+'='+o[i].value
		d='\n'
	}
	alert(str)
}
</script>
</head>
<body>
<form id='myfrm'>
	<input id='id1' type='text' value='01' />
	<input id='id2' type='text' value='02' />
	<input id='test' type='text' value='test' />
	<input id='id3' type='text' value='03' />
	<input type='button' value='Go' onclick='Go()' />
</form>
</body>
</html>
28 сен 11, 10:00    [11346066]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
Спасибо, сейчас попробую разобраться. И... обращусь, если что. ОК?
28 сен 11, 10:03    [11346083]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
Я так понял это решено с подключением JQuery?
28 сен 11, 10:26    [11346187]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
junb1
Member

Откуда: Днепродзержинск, Украина
Сообщений: 412
вот попроще код :)
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<style type="text/css">
</style>
<script type="text/javascript">
function Go() {
	var str="";
	$('#myfrm input[type=text][id^=id]').each(
		function()
		{
			str+=this.id+'='+this.value+'\n';
		}
	);
	alert(str);
}
</script>
</head>
<body>
<form id='myfrm'>
	<input id='id1' type='text' value='01' />
	<input id='id2' type='text' value='02' />
	<input id='test' type='text' value='test' />
	<input id='id3' type='text' value='03' />
	<input type='button' value='Go' onclick='Go()' />
</form>
</body>
</html>
28 сен 11, 10:27    [11346197]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
junb1
Member

Откуда: Днепродзержинск, Украина
Сообщений: 412
Foxter
Я так понял это решено с подключением JQuery?

да
28 сен 11, 10:28    [11346202]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
Блин, подключение библиотек использовать не могу. Нужен "чистый" js-код
28 сен 11, 10:36    [11346244]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
junb1
вот попроще код :)

Я только начинаю использовать JQ...
28 сен 11, 10:38    [11346255]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
Foxter
Блин, подключение библиотек использовать не могу. Нужен "чистый" js-код

$20...
28 сен 11, 10:39    [11346261]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
junb1
Member

Откуда: Днепродзержинск, Украина
Сообщений: 412
Foxter
Блин, подключение библиотек использовать не могу. Нужен "чистый" js-код

тогда пробуй перебирать через
document.getElementById("myfrm").elements.item(.....).id
28 сен 11, 10:39    [11346266]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
junb1
Member

Откуда: Днепродзержинск, Украина
Сообщений: 412
krvsa
Я только начинаю использовать JQ...

обращайся если чего, помогу ;)
28 сен 11, 10:49    [11346346]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
ShSerge
Member

Откуда: ʚонɔ dиw
Сообщений: 24853
krvsa
Foxter
Блин, подключение библиотек использовать не могу. Нужен "чистый" js-код

$20...

$15
28 сен 11, 10:54    [11346389]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
junb1
обращайся если чего, помогу ;)

Я и сам не промах... Учебник уже скачал...

Например твой вариант еще можно "упростить":

function Go() {
	var str="";
	$('#myfrm :text[id^=id]').each(
		function(){
			str+=this.id+'='+this.value+'\n';
		}
	);
	alert(str);
}
28 сен 11, 11:32    [11346744]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
Ребята, может кто-нибудь займется делом и поможет человеку с кодом на чистом js
28 сен 11, 13:26    [11347760]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
pilot911
Member [заблокирован]

Откуда: Москва
Сообщений: 3906
может проще вот так:

var form_data=$('#myfrm').serializeArray();

на выходе получишь массив типа:

[
{
name: "a",
value: "1"
},
{
name: "b",
value: "2"
},
{
name: "c",
value: "3"
},
{
name: "d",
value: "4"
},
{
name: "e",
value: "5"
}
]
28 сен 11, 13:28    [11347785]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Zoria
Member

Откуда:
Сообщений: 14201
Foxter,

так все делом и занимаются...
я вот - сайт тестирую..
28 сен 11, 13:29    [11347793]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13174
Foxter
Ребята, может кто-нибудь займется делом и поможет человеку с кодом на чистом js

Цены мы тебе уже написали... Т.ч. дело за тобой.
28 сен 11, 14:04    [11348113]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
junb1
Member

Откуда: Днепродзержинск, Украина
Сообщений: 412
Foxter,

тынц
28 сен 11, 14:42    [11348516]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
pilot911
может проще вот так:

var form_data=$('#myfrm').serializeArray();

на выходе получишь массив типа:

[
{
name: "a",
value: "1"
},
{
name: "b",
value: "2"
},
{
name: "c",
value: "3"
},
{
name: "d",
value: "4"
},
{
name: "e",
value: "5"
}
]


Но опять же JQuery :(
29 сен 11, 09:31    [11352596]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Foxter
Member

Откуда: Fairfield, CS, USA
Сообщений: 422
krvsa
Foxter
Ребята, может кто-нибудь займется делом и поможет человеку с кодом на чистом js

Цены мы тебе уже написали... Т.ч. дело за тобой.


А как же профессиональная взаимопомощь? Но мне кажется, что Вы даже за деньги не способны это сделать. Так как без JQuery никуда. Да?
30 сен 11, 11:23    [11360504]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
няка
Member

Откуда: из норы
Сообщений: 493
Foxter,

обвинять krvsa в том что он без JQuery никуда это просто лол из лолов
30 сен 11, 11:57    [11360972]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Antonariy
Member

Откуда: ☭
Сообщений: 72736
А мне кажется, толсто.
Вопрос банален, но в ответе многабукв, потому пофиг всем, кроме Яндекса. Он доставил 7ю ссылку.
30 сен 11, 12:01    [11361031]     Ответить | Цитировать Сообщить модератору
 Re: JS Перебрать все элементы в форме и получить их значения  [new]
Сирин
Member

Откуда: Пермь
Сообщений: 1076
querySelectorAll(). Без jQuery!
3 окт 11, 12:46    [11373170]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / HTML, JavaScript, VBScript, CSS Ответить