check.jsjs函式檔案
/**---------------客戶端表單通用驗證checkform(oform)-----------------
*功能:通用驗證所有的表單元素.
*使用:
**author:wanghr100(灰豆寶寶.net)
*email:[email protected]
*update:19:282004-8-23
*注意:寫正規表示式時一定要小心.不要讓"有心人"有空子鑽.
*已實現功能:
*對text,password,hidden,file,textarea,select,radio,checkbox進行合法性驗證
*待實現功能:把正則表式寫成個庫.
*---------------客戶端表單通用驗證checkform(oform)-----------------
*///主函式
functioncheckform(oform)
} }
} //通用取值函式分三類進行取值
//文字輸入框,直接取值el.value
//單多選,遍歷所有選項取得被選中的個數返回結果"00"表示選中兩個
//單多下拉列表,遍歷所有選項取得被選中的個數返回結果"0"表示選中乙個
functiongetvalue(el)
//取得radio,checkbox的選中數,用"0"來表示選中的個數,我們寫正則的時候就可以通過0來表示選中個數
functiongetvaluechoose(el) {
varsvalue="";
//取得第乙個元素的name,搜尋這個元素組
vartmpels=document.getelementsbyname(el.name);
for(vari=0;idemo.htm演示檔案
選擇你喜歡的運動:
游泳籃球
足球排球
你的學歷:
大學中學
小學個人介紹:
20個字以上
不管是動態**,還是其它b/s結構的系統,都離不開表單
表單做為客戶端向伺服器提交資料的載體擔當相當重要的角色.
這就引出了乙個問題,提交的資料合法嗎?擺在我們面前的問題就是驗證這些資料
保證所提交的資料是合法的.所以,我們寫了乙個大堆的驗證函式.當我們開始新的乙個
專案的開發時,我們又得寫一大堆的驗證函式,然後再除錯這一大堆的函式...
本文將介紹一種方法來提高我的**的可重用性,提高我們的開發效率.
個人以為表單的驗證應該包含兩部分:
第一,判斷使用者輸入的資料是否合法.
第二,提示使用者你的資料為什麼是不合法的.
所以,我們的通用表單驗證函式要實現的功能就是:
第一,取得使用者輸入的資料getvalue(el)
第二,驗證使用者的資料checkform(oform)
ie支援自定義屬性,這就是這個通用函式實現的基礎
我們可以在表單元素上加入描述自身資訊的屬性.有點像xml吧.
check屬性:該屬性用於儲存資料合法性的正規表示式.
warning屬性:該性性用於儲存出錯誤提示資訊.
第三,返回有誤的表單提示goback(el)
這三個步驟的觸發事件是onsubmit,記住是returncheckform(this)
搞錯了就全功盡棄了:)
寫到這裡,整體框架就出來了,通過取得表單元素的check屬性,取得字串,構建正規表示式.再驗證其值.如果通過驗證就提交,如是資料不合法則取得表單元素的warning屬性,產生提示資訊.並返回到該表單元素.整個的框架也比較簡單.
我們要做的就是寫好正規表示式!
接下來我們來分析一下所有的表單元素
按其共性,我們將它們分為三類
每類表單的特點不一樣,我們的目標就是寫出通用的.
1.文輸入框text
2.單多選框choose
3.單多下拉列表select
講了一堆"大道理"太抽象了,**更有說服力!
附:microsoft windows指令碼技術,這裡有正規表示式的介紹
乙個很不錯的正規表示式**,裡面收集了很多的正規表示式.直接拿來主義吧.
以上內容**:
JS通用表單驗證函式
check.js js函式檔案 客戶端表單通用驗證checkform oform 功能 通用驗證所有的表單元素.使用 author wanghr100 灰豆寶寶.net email wanghr100 126.com update 19 28 2004 8 23 注意 寫正規表示式時一定要小心.不要...
JS通用表單驗證函式
不管是動態 還是其它b s結構的系統,都離不開表單 表單做為客戶端向伺服器提交資料的載體擔當相當重要的角色.這就引出了乙個問題,提交的資料合法嗎?擺在我們面前的問題就是驗證這些資料 保證所提交的資料是合法的.所以,我們寫了乙個大堆的驗證函式.當我們開始新的乙個 專案的開發時,我們又得寫一大堆的驗證函...
JS通用表單驗證函式
不管是動態 還是其它b s結構的系統,都離不開表單 表單做為客戶端向伺服器提交資料的載體擔當相當重要的角色.這就引出了乙個問題,提交的資料合法嗎?擺在我們面前的問題就是驗證這些資料 保證所提交的資料是合法的.所以,我們寫了乙個大堆的驗證函式.當我們開始新的乙個 專案的開發時,我們又得寫一大堆的驗證函...