本帖最后由 stneo1990 于 2012-12-08 14:53:17 编辑

解决方案 »

  1.   

    frm.username得到input DOM对象,DOM类型就objectfrm.getElementsByName("username")得到的是DOM数组,不是input对象,要获得input对象要通过下标获取,frm.getElementsByName("username")[0]
      

  2.   


    那请问一下,为什么frm里面会有"username"这个属性呢?它只不过是name属性的值而已,为什么会变为了frm2对象的一个属性呢?
      

  3.   

    楼主找本基础的dhtml编程书籍看看吧。。
      

  4.   

    http://www.w3school.com.cn/htmldom/coll_form_elements.asp
    Form 对象集合 elements[]  :包含表单中所有元素的数组。
    elements 集合可返回包含表单中所有元素的数组。
    元素在数组中出现的顺序和它们在表单的HTML 源代码中出现的顺序相同。
    每个元素都有一个 type 属性,其字符串值说明了元素的类型。
    语法
    formObject.elements[].property
    提示和注释
    提示:如果 elements[] 数组具有名称(input 标签的 id 或 name 属性),那么该元素的名称就是 formObject 的一个属性,因此可以使用名称而不是数字来引用 input 对象。
    举例,假设 x 是一个 form 对象,其中的一个 input 对象的名称是 fname,则可以使用 x.fname 来引用该对象。
    var frm=document.forms[1];
    var input=frm.username;// frm对象中input 对象的名称是 username