用你这种方法,当对象只有一个的时候,得到的只是这个对象而不是一个集合了。所以你要用另一种方法来实现: var a = document.getElementsByName("uploadfile[]"); //强烈要求不要用length这样的关键字来定义变量名 alert(a.length);
写错了,应该是: var length=document.getElementsByName("uploadfile").lengthjavascript中定义“uploadfile”控件数组的时候不用加“[]”。用document.表单名.("元素名"),document.表单名.all.("元素名"),document.all.("元素名")访问元素是都有类似的问题:只有一个同名元素是返回的不是元素数组而是元素本身。
为什么不对?? 可以分别试checkbox为1个和2个的情况 <script> function checkit() { var a = document.getElementsByName("uploadfile[]"); alert(a.length); } </script> <input type=checkbox name=uploadfile[] value=1> <input type=checkbox name=uploadfile[] value=2> <input type=button onclick=checkit()>
var a = document.getElementsByName("uploadfile[]");
//强烈要求不要用length这样的关键字来定义变量名
alert(a.length);
var length=document.getElementsByName("uploadfile").lengthjavascript中定义“uploadfile”控件数组的时候不用加“[]”。用document.表单名.("元素名"),document.表单名.all.("元素名"),document.all.("元素名")访问元素是都有类似的问题:只有一个同名元素是返回的不是元素数组而是元素本身。
可以分别试checkbox为1个和2个的情况
<script>
function checkit()
{
var a = document.getElementsByName("uploadfile[]");
alert(a.length);
}
</script>
<input type=checkbox name=uploadfile[] value=1>
<input type=checkbox name=uploadfile[] value=2>
<input type=button onclick=checkit()>