getElementsByName и выборка из name[]
Здравствуйте!
Подскажите, почему не получается с помощью getElementsByName выбрать значения из определенных инпутов, которые состоят из массива? Есть форма, в которой два вида инпутов: input name="pr_uv[]" и input name="pr_neuv[]". Необходимо собрать все value из инпутов с именем name="pr_uv[]". Получается это сделать с помощью document.getElementsByClassName, а хотелось бы через getElementsByName.
<html>
<head>
<title>getElementsByName</title>
<meta name="generator" content="notepad">
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<script type="text/javascript">
function propUvClass() {
var elems = document.getElementsByClassName('prUv');
for (var i = 0; i < elems.length; i++) {
alert(elems[i].value);
}
}
function propUvName() {
var elems = document.getElementsByName("pr_uv[]");
//var elems = document.getElementsByName("pr_uv");
alert(elems);
for (var i = 0; i < elems.length; i++) {
alert(elems[i].value);
}
}
</script>
</head>
<body>
<form action="" method="post" id="Form1" name="Form1">
<input onclick="propUvName();" class="buttom" type="button" value="Подсчет (ByName)">
<br>
<br>
name="pr_uv[]" <input class="prUv" type="text" value="1" name="pr_uv[1]"></input>
<input class="prUv" type="text" value="2" name="pr_uv[3]"></input>
<input class="prUv" type="text" value="3" name="pr_uv[5]"></input>
<br>
name="pr_neuv[]" <input type="text" value="5" name="pr_neuv[2]"></input>
<input type="text" value="7" name="pr_neuv[4]"></input>
<input type="text" value="9" name="pr_neuv[7]"></input>
<br>
<br>
<input onclick="propUvClass();" class="buttom" type="button" value="Подсчет (ByClassName)">
</form>
</body>
</html>
|
damon,
getElementsByName Вы же отбираете по имени которого нету pr_uv[]. У Вас есть pr_uv[1], pr_uv[3],pr_uv[5] |
damon,
var elems = document.querySelectorAll('[name^="pr_uv"]');
|
damon,
<html>
<head>
<title>getElementsByName</title>
<meta name="generator" content="notepad">
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<script type="text/javascript">
function propUvClass() {
var elems = document.getElementsByClassName('prUv');
for (var i = 0; i < elems.length; i++) {
alert(elems[i].value);
}
}
function propUvName() {
var elems = document.querySelectorAll('[name^="pr_uv"]');
//var elems = document.getElementsByName("pr_uv");
for (var i = 0; i < elems.length; i++) {
alert(elems[i].value);
}
}
</script>
</head>
<body>
<form action="" method="post" id="Form1" name="Form1">
<input onclick="propUvName();" class="buttom" type="button" value="Подсчет (ByName)">
<br>
<br>
name="pr_uv[]" <input class="prUv" type="text" value="1" name="pr_uv[1]"></input>
<input class="prUv" type="text" value="2" name="pr_uv[3]"></input>
<input class="prUv" type="text" value="3" name="pr_uv[5]"></input>
<br>
name="pr_neuv[]" <input type="text" value="5" name="pr_neuv[2]"></input>
<input type="text" value="7" name="pr_neuv[4]"></input>
<input type="text" value="9" name="pr_neuv[7]"></input>
<br>
<br>
<input onclick="propUvClass();" class="buttom" type="button" value="Подсчет (ByClassName)">
</form>
</body>
</html>
|
ОК, понял.
Спасибо! |
| Часовой пояс GMT +3, время: 11:13. |