Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中正确循环表单元素_Javascript_Arrays_Forms - Fatal编程技术网

如何在javascript中正确循环表单元素

如何在javascript中正确循环表单元素,javascript,arrays,forms,Javascript,Arrays,Forms,我要做的是从每个类型为“text”的表单元素中获取值。你能教我从文本框中获取值并使用javascript输出这些值的正确方法吗 <head> <script type="text/javascript"> function trap(){ for(var i=0; i<document.x.elements.length; i++) { document.write(document.x.elements[i].value + "<br />"); }

我要做的是从每个类型为“text”的表单元素中获取值。你能教我从文本框中获取值并使用javascript输出这些值的正确方法吗

<head>
<script type="text/javascript">
function trap(){
for(var i=0; i<document.x.elements.length; i++)
{
document.write(document.x.elements[i].value + "<br />");
}
}
</script>
</head>
<body>


<form name="x">

<?php
for($i=0;$i<2;$i++){
?>

qty #<?php echo $i; ?>
<input type="text" name="qty[<?php echo $i; ?>]" value=""/>
<img src="add-icon.png" onmouseover="trap();">

<?php } ?>

</form>

</body>
这与我在php for循环中指定的数字相同,但是我只得到元素#1的值。它似乎没有从
qty[1]


请帮忙。谢谢

您遇到的问题是另一个:

在函数中使用
document.write()
。加载页面后不能使用此方法,因为它将覆盖整个文档->以及函数本身。在第一次调用write之后,函数就不存在了,您得到了一个新文档,其中只包含您刚刚编写的数据

使用而不是write()其他方法,例如:

document.body.appendChild(document.createTextNode(document.x.elements[i].value ));
document.body.appendChild(document.createElement('br'))
document.body.appendChild(document.createTextNode(document.x.elements[i].value ));
document.body.appendChild(document.createElement('br'))