页面设定:<logic:iterate ...
<input type="hidden" name="id" id="id" value="<bean:write name='aa' property='id'/>" /> 
<input type="hidden" name="list" id="list" value="<bean:write name='aa' property='aList'/>" />
 ...
</logic:iterate>javascript :
function onsubmit() { var id = document.getElementsByName("id");
var aList = document.getElementsByName("aList");              =======> ???

...
}现在这个部分
            var aList = document.getElementsByName("aList");     取不出设定的值,请问怎么能取到alist的值呢?         

解决方案 »

  1.   

      var aList = document.getElementsById("list").value;    
      

  2.   

    在有js来得到表单中的值时,最好在表单中只设置id的值
    通过document,getElementById(),来得到表单的值,
    下面为表单的代码:
    <tr>
        <td width="70px"><div align="right"> 用户名:</div></td>
        <td>&nbsp;<input id="username" name="username" type="text" size="20" maxlength="20" onblur="checkname();"><span id="checkname"></sapn></td>
      </tr>
      <tr>
        <td width="70px"><div align="right">密码:</div></td>
        <td>&nbsp;<input id="password" name="password" type="password" size="20" value="" maxlength="32" onblur="checkpassword();"><span id="checkpassword"></span></td>
      </tr>下面为JS的代码:
    function $(idname){
         return document.getElementById(idname);  
    }
    function checkname(){
        var name=$('username').value;
         if(name!=''){ 
         if(name.length < 4 || name.length > 14){
            $('username').value="";
            $('checkname').innerHTML='<font color=red size=1>用户名长度为4-14</font>';
            return false;
         }else{
            $('checkname').innerHTML='<font color=red size=1>success</font>';
            return true;
         }
         }else{
            $('checkname').innerHTML='<font color=red size=1>error 用户名长度不能为空</font>';
            return false;
          }
    }
      

  3.   


    var aList = document.getElementById("list").value;
    而不是getElements
    var aList = document.getElementsByName("aList"); 
    getElementsByName() 得到的是数组对象,
      

  4.   

    document.getElementsByName("aList");得到的是Element对象数组,如果aList是唯一的可以写为:document.getElementsByName("aList")[0];取里面的值用value,即document.getElementsByName("aList")[0].value;
      

  5.   


    同意!  但是不建议用getElementsByName 取值一般用getElementById 
    记得.value哦!
      

  6.   

     var aList = document.getElementsByName("list");    
      

  7.   


    你的name="list"你写成("alist")了!!
    仔细看看
      

  8.   

    这样取的 var aList = document.getElementsById("list").value;
      

  9.   

    document.getElementsById("list").value;
      

  10.   

    document.getElementById("list").value;
    而不是document.getElementsById("list").value;没有"2"用getElementsByName("aList")取到的是数组,就是页面上具有"aList"一样名字的数组,
      

  11.   

     var aList = document.getElementsByName("aList")没有这个叫"aList"的Name啊
      

  12.   

     document.getElementsByName("aList");  取得是数组