关于使用name值取得元素的value

   dom结构如下:

<form name="J_Product">

            <input type="text" name="J_ProductName"/>

            <input type="text" name="J_ProductName"/>

            <input type="text" name="J_ProductName"/>

            <input type="text" name="J_ProductName"/>

            <input type="text" name="J_ProductName"/>

        </form>

  js如下:

 

var store={};

            store.products=document.J_Product.J_ProductName;

            var length=store.products.length;

            alert(length);//output 5

说明这个时候存储的是所有共同name值的元素集合。而当改变该dom的结构值剩一个的时候,这个时候可以发现这时候length属性为undefied。通过console.log(store.products)发现这是一个单一的dom元素而非包含单一元素的元素集合。该元素不存在length这个属性也就返回了一个undefied值了

总结:通过name值获取元素当有多个相同name值的元素时候得到的是一个所有元素的对象集合。当只有一个的时候获取的是该元素。而不是单一元素对象集合。