假如一个页面有很多个id位summary的input
<input name='summary' id='summary' type='text' />
<input name='summary' id='summary' type='text' />
<input name='summary' id='summary' type='text' />
<input name='summary' id='summary' type='text' />怎么才能在js中获得summary的数组呢?那么应该怎样用
document.getElementById( 'summary ')(我试过了,返回的不是一个数组)

解决方案 »

  1.   

    当然了,id是唯一的document.getElementById( 'summary ')返回的就是第一个,该方法一旦找到匹配的对象就立即返回了,说一直有一个,document.getElementsByName("summary")这样就可以返回一个集合。
      

  2.   

    不好意思,写了好多错别字哈~~,建议你学习一下JQuery,他对DOM操作很方便的。
      

  3.   

    document.getElementsByName("summary"); 返回一个集合
      

  4.   


    正解,就算你id都相同,但是用getElementById("summary");得到的只能是第一个id为summary<input>
    的内容
      

  5.   

    首先,你的这些input的id属性命名不规范,符合规范的id名称是唯一存在的,独一无二的,这样你document.getElementById才能得到那个唯一的标签对象,而得到一组那么相同的对象则用 document.getElementsByName()
      

  6.   

    document.getElementsByName( 'summary ')
      

  7.   

    document.getElementsByName() 方法可返回带有指定名称的对象的集合
      

  8.   


    或者用document.all.summary也是可以的
      

  9.   

    document.all.summary :
    这个是微软专用的。建议不要使用这个方法。W3C标准是 document.getElementsByName('summary');<input name='summary' id='summary1' type='text' />
    <input name='summary' id='summary2' type='text' />
    <input name='summary' id='summary3' type='text' />
    <input name='summary' id='summary4' type='text' />
      

  10.   

    document.getElementsByName("summary"); 
    或者document.getElementsByTag("input");
      

  11.   

    getElementById() 返回对拥有指定 id 的第一个对象的引用。getElementsByName() 返回带有指定名称的对象集合。getElementsByTagName() 返回带有指定标签名的对象集合。
    谢谢大家了,getElementByName这个貌似不能用报错getElementsByName()这个能用,谢谢大家了分数不多
      

  12.   

    不能传数组,一般将数组封装成json数据传送,json的本质就是字符串,只不过它有特定的格式
      

  13.   

    我知道,用json行,但是用json的话就需要过两个Action ,数值在第二个Action中会丢失的。