<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    和風細雨

    世上本無難事,心以為難,斯乃真難。茍不存一難之見于心,則運用之術自出。

    使用JavaScript操作表單


    獲取表單的引用

    在開始對表單進行編程前,必須先獲取表單<form>的引用.有以下方法可以來完成這一操作。
    1)采用典型的DOM樹中的定位元素的方法getElementById(),只要傳入表單的id即可獲得表單的引用:
    var vform=document.getElementById(“form1”);

    2)還可以用document的forms集合,并通過表單在form集合中的位置或者表單的name特性來進行引用:
    var oform=document.forms[0];
    var oform=document.forms[“formZ”];

    訪問表單字段

    每個表單字段,不論它是按鈕,文本框還是其它內(nèi)容,均包含在表單的elements集合中.可以用它們的name特性或者它們在集合中的位置來訪問不同的字段:
    Var oFirstField=oForm.elements[0];
    Var oTextBox1=oForm.elements[“textBox1”];
    此外還可以通過名字來直接訪問字段,如:
    Var oTextBox1=oForm.textbox1;
    如果名字中有標記,則可以使用方括號標記:
    Var oTextBox1=oForm[“text box 1”];

    最常見的訪問表單字段的方法

    最簡單常用的訪問表單元素的方法自然是document.getElementById(),舉例如下:
    <input type="text" name="count"
          value="" />
    在JS中取得此元素內(nèi)容的代碼為:
    var name=document.getElementById("name").value
    這種方法無論表單元素處于那個表單中甚至是不在表單中都能湊效,一般情況下是我們用JS訪問表單元素的首選.
    鑒于document.getElementById比較長,你可以用如下函數(shù)代替它:
    function $(id){
         return document.getElementById(id);
    }
    把這個函數(shù)放在共有JS庫中,在jsp頁面通過如下方法引用它:
    <head>
    <title>"記賬系統(tǒng)"添加資源頁面</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script src="web/js/check.js" type="text/javascript"></script>
    <link rel="stylesheet" rev="stylesheet" href="web/css/style.css"
     type="text/css" />
    </head>
    此后你就可以直接使用$訪問表單元素中的內(nèi)容:
    var name=$("name").value; 

    表單字段的共性

    以下是所有表單字段(除了隱藏字段)
    Disabled可以用來獲取或設置表單控件是否被禁用.
    Form特性用來指向字段所在的表單.
    Blur()方法使表單字段失去焦點.
    Focus()方法使表單字段獲得焦點.
    當字段失去焦點是,發(fā)生blur事件,執(zhí)行onblur事件處理程序.
    當字段獲取焦點時,發(fā)生focus事件,執(zhí)行onfocus事件處理函數(shù).

    當頁面載入時將焦點放在第一個字段

    在body代碼中如此書寫:
    <body onload=“focusOnFirstElm()”>
    JS函數(shù)如下書寫:
    Fucntion focusOnFirstElm(){
         document.forms[0].elements[0].focus();
    }
    如果第一個字段不是隱藏字段此方法就是湊效的,如果是的話把elements的下標改成非隱藏字段的下標即可.

    控制表單只被提交一次

    由于Web的響應問題,用戶有可能會點擊多次提交按鈕從而創(chuàng)建重復數(shù)據(jù)或是導致錯誤,我們可以使用JS對提交按鈕進行設置以讓表單只被提交一次。
    <input type=“submit” value=“提交” onclick=“this.disabled=true;this.form.submit()”/>
    這里在點擊提交按鈕時執(zhí)行了兩句JS代碼,一次是this.disabled=true;這是讓提交按鈕被禁用;一次是this.form.submit()這是提交這個按鈕所在的表單。

    檢查用戶在表單元素中的按鍵

    為控件添加 onkeydown事件處理,然后在函數(shù)查看keyCode,就能知道用戶的按鍵,代碼如下:
    <input type="text" name="test"
    value="" onkeydown="testkey(this,event)"/>
    JS代碼如下:
    function testkey(obj,event){
         alert(event.keyCode);
    }

    這種技巧在改善用戶體驗如按回車鍵提交表單時很常用。

    posted on 2008-03-02 15:23 和風細雨 閱讀(2263) 評論(2)  編輯  收藏 所屬分類: JavaScript

    評論

    # re: 使用JavaScript操作表單 2008-06-04 20:17 eeeeeeeeeee

    eeeeeeeeeeeee  回復  更多評論   

    # re: 使用JavaScript操作表單 2008-06-26 22:21 314696063

    寫得很好,,請問你一個問題 ,如果我曉得一個表格中表單元素,我怎么求出這個元素是在表格中的哪一行的哪一列呢,里面有隱藏值的,,怎么去得到呢,比如說:document.forms[0].elements[0];
    我怎么知道document.forms[0].elements[0]。他在表格中是屬于哪個行和列的呢?????????

    頂!  回復  更多評論   

    主站蜘蛛池模板: 色www免费视频| 亚洲AV无码久久久久网站蜜桃| 精品视频免费在线| 免费观看成人毛片a片2008| 亚洲日韩中文字幕天堂不卡 | 久久精品亚洲日本波多野结衣| 亚洲国产系列一区二区三区| 99视频在线免费看| 国产黄在线观看免费观看不卡| 久久久久高潮毛片免费全部播放| 美女视频黄是免费的网址| 亚洲欧洲日产v特级毛片| 999zyz**站免费毛片| 亚洲产国偷V产偷V自拍色戒| 亚洲国产精品无码久久| 免费的一级黄色片| 亚洲视频免费在线观看| 亚洲免费视频播放| 亚洲午夜无码久久| 亚洲精品无码久久毛片| 亚洲欧美日韩自偷自拍| 亚洲XX00视频| 日本免费中文字幕| 亚洲高清一区二区三区| 一级毛片直播亚洲| 中日韩亚洲人成无码网站| 国产精品无码一二区免费| 亚洲不卡在线观看| 国产婷婷高清在线观看免费| 中文字幕乱码免费看电影| 亚洲一区二区三区免费观看 | 一级**爱片免费视频| 久久精品国产亚洲网站| 精品久久久久久久久免费影院| 中文字幕不卡亚洲| 免费无毒a网站在线观看| 日韩精品亚洲aⅴ在线影院| 97在线视频免费| 香港经典a毛片免费观看看| 亚洲AV无码日韩AV无码导航| 永久黄网站色视频免费|