zoukankan      html  css  js  c++  java
  • JavaScript学习笔记——对表单的操作

    javascript-对表单的操作实例讲解

    <form name="myform" id="form1" action="" method="post">
       姓名:<input type="text" name="names" id="names" value="zhangsan"><br/>
       年龄:<input type="text" name="age" value="19"><br/>
       性别:<input type="radio" name="sex" value="man"><input type="radio" name="sex" value="woman"><br/>
       爱好:<input type="checkbox" name="like[]" value="play"><input type="checkbox" name="like[]" value="run">跑步
            <input type="checkbox" name="like[]" value="study">学习<br/>
        毕业院校:
            <select name="school">
              <option>
                  北京大学
              </option>
                    <option>
                  清华大学
              </option>
                    <option>
                  南开大学
              </option>
            </select>
            <br/>
        简介:<textarea cols="60" rows="10" name="info">后盾网视频教程创始人</textarea><br/>
        <input type="button" value="提交">
    </form>

    一、获得表单引用
      1>通过直接定位的方式来获取
      document.getElementById();
      document.getElementsByName();
      document.getElementsByTagName();

          //var myform=document.getElementById("form1");
          //alert(myform.name);
          //var myform=document.getElementsByName("myform")[0];
         // alert(myform.name);

      2>通过集合的方式来获取引用

      document.forms[下标]
      document.forms["name"]
      document.forms.name

        //var myform=document.forms[0];
        //var myform=document.forms["myform"];
        //var myform=document.forms.myform;
        //alert(myform.name)

      3>通过name直接获取“(只适用于表单)

      document.name

        //var myform=document.myform;
        //alert(myform.name);

    二、获得表单元素的引用

      1>直接获取
      document.getElementById();
      document.getElementsByName();
      document.getElementsByTagName();

         //直接获取
          // var names=document.getElementById("names").value;
          // alert(names)
    
          //var names=document.getElementsByName("names")[0].value
         // alert(names)

      2>通过集合来获取
      表单对象.elements 获得表单里面所有元素的集合
      表单对象.elements[下标]
      表单对象.elements["name"]
      表单对象.elements.name

          //var eles=document.myform.elements.length;
          //alert(eles)
    
           //var names=document.myform.elements[0].value;
             //var names=document.myform.elements["names"].value;
            // var names=document.myform.elements.names.value;
           //alert(names)

      3>直接通过name的形式
      
      表单对象.name

             //var age=document.myform.age.value;
             //alert(age);
            // var info=document.myform.info.value;
            // alert(info)
    

    三、表单元素共同的属性和方法

      1>获取表单元素的值
      表单元素对象.value 获取或是设置值

         // document.getElementById("fom1").names
         //  document.forms[0].elements[0]

      2>属性
      disabled 获取或设置表单控件是否禁用 true false

        //disabled 
         //var names=document.myform.names.disabled =true;
         //var school=document.myform.school.disabled =true;

      form 指向包含本元素的表单的引用

         //form
          //var age=document.forms[0].elements.age.form
          //alert(age.name);

      3>方法
      blur()失去焦点
      focus() 获得焦点

         //foucs
           var name=document.forms.myform.elements.names.focus();

     

    四、文本域
      <input type="text" >
      ***********************************
      操作文本域的值
      value 属性 设置或者获取值

       //文本域
       //var names=document.forms[0].elements.names.value="lisi";
       //alert(names)

      ***********************************

    五、单选按钮

      *******************************************
      checked 返回或者设置单选的选中状态
      true 选中 false 未选中

      value 属性 获取选中的值,必须先判断选中状态。

           var sex=document.myform.sex;
              sex[0].checked=true;
             for (var i=0; i<sex.length; i++) {
               if(sex[i].checked){
                 alert(sex[i].value)
               }
             }

      *******************************************

    六、多选按钮

      *******************************************
      checked 返回或者设置单选的选中状态
      true 选中 false 未选中

      value 属性 获取选中的值,必须先判断选中状态。

          var likes=document.forms.myform["like[]"];
            likes[2].checked=true;
          for (var i=0; i<likes.length; i++) {
             if(likes[i].checked){
               alert(likes[i].value);
             }

      *******************************************

    七、下拉框

      ************************************************
      selected 设置或返回下拉框的选中状态
      true 选中 false 未选中

      selectedIndex 设置或返回下拉框被选中的索引号

           //var school=document.myform.school;
          // var school=document.myform.school.options;
           //alert(school.length)
           //selected设置选中状态
             //school[1].selected=true;
           //selectedIndex设置选中状态
              //school.selectedIndex=2;

      ************************************************

    八、文本区域

    ***************************************
    <textarea></textarea>
    value 操作值

    <form name="myform">
      <textarea name="info" rows="7" cols="60"></textarea>
    </form>
    var str=info.value;

    ***************************************


    九、验证表单

    1.事件
    onsubmit 当表单提交的时候触发的事件
    onblur
    onfocus
    onchange

    2.return false; 阻止事件的默认行为(适用于所有事件)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>javascript-对表单的操作实例讲解(上)</title>
    <script>
      function check (obj) {
        if(obj.names.value==""){
          alert("姓名不能为空");
          return false;
        }
        if(obj.age.value==""){
         alert("年龄不能为空");
          return false;
         }
         var statu=0;
         for (var i=0; i<obj.sex.length; i++) {
          if(obj.sex[i].checked){
            statu=1;
          }
         }
         if(!statu){
           alert("性别不能为空");
           return false;
         }
      }
    </script>
    </head>
    
    <body>
    <form name="myform" id="form1" action="" method="post" onsubmit=" return check(this)">
       姓名:<input type="text" name="names" id="names" ><br/>
       年龄:<input type="text" name="age" ><br/>
       性别:<input type="radio" name="sex" value="man"><input type="radio" name="sex" value="woman"><br/>
       爱好:<input type="checkbox" name="like[]" value="play"><input type="checkbox" name="like[]" value="run">跑步
            <input type="checkbox" name="like[]" value="study">学习<br/>
        毕业院校:
            <select name="school">
              <option>
                  北京大学
              </option>
                    <option>
                  清华大学
              </option>
                    <option>
                  南开大学
              </option>
            </select>
            <br/>
        简介:<textarea cols="60" rows="10" name="info">后盾网视频教程创始人</textarea><br/>
        <input type="submit" value="提交">
    </form>
    
    </body>
    </html>

    十、提交方法

    表单的方法
    表单对象.submit()

    <script>
      window.onload=function  () {
        var subs=document.myform.subs;
         subs.onclick=function  () {
          document.myform.action="1.html";
          document.myform.submit();
        }
    
        setTimeout(function  () {
           document.myform.action="2.html";
          document.myform.submit();
        },4000)
      }
    </script>

     





  • 相关阅读:
    Java.util.concurrent包学习(一) BlockingQueue接口
    [转载]最牛B的编码套路
    思考人生
    非奇异矩阵的零度互补法则
    Hopfield 网络(下)
    Hopfield 网络(上)
    矩阵的相似性与对角化
    左右特征向量
    特征多项式、代数重数与几何重数
    特征值和特征向量
  • 原文地址:https://www.cnblogs.com/tonglin0325/p/4717180.html
Copyright © 2011-2022 走看看