摘要:這樣我們就有機(jī)會驗(yàn)證表單數(shù)據(jù),并據(jù)以決定是否允許表單提交。下面代碼會阻止表單提交取得時間對象阻止默認(rèn)事件注意以這種方式提交表單,不會觸發(fā)事件。
這里是表單驗(yàn)證的第一課:主要講授有關(guān)表單的基礎(chǔ)知識。
關(guān)于表單驗(yàn)證的更多知識可以參考《javascript高級程序設(shè)計》之第14章:表單腳本
1.表單事件
submit():提交表單
reset():將所有表單域重置為默認(rèn)值
(1).取得form元素的引用
(1)var form=document.getElementById("form1"); (2)var form=document.getElementByTagName("form1"); (3)var forms=document.forms//取得頁面中所有表單 var form=document.forms[0]//取得頁面中第一個表單 var form=document.forms["form2"http://取得頁面中name="form2"的表單
(2).提交表單
(1) (2) (3)
以上方式提交表單時,瀏覽器會在將請求發(fā)送給服務(wù)器之前會觸發(fā)submit事件。這樣我們就有機(jī)會驗(yàn)證表單數(shù)據(jù),并據(jù)以決定是否允許表單提交。
在編寫表單提交代碼之前,我們需要先了解一下瀏覽器兼容代碼,代碼文件EventUtil.js內(nèi)容就發(fā)布在我的文章里,有興趣的可以拿來好好讀一讀,這里不再闡述,直接使用。
下面代碼會阻止表單提交:
var form=document.getElementById("myForm); EventUtil.addHandler(form,"submit",function(event){ //取得時間對象 var event=EventUtil.getEvent(event); //阻止默認(rèn)事件 EventUtil.preventDefault(); })
注意:
var form=document.getElementById("myForm); form.submit();
以這種方式提交表單,不會觸發(fā)submit事件。
(3)重置表單
(1) (2)
下面代碼會阻止表單重置:
var form=document.getElementById("myForm); EventUtil.addHandler(form,"reset",function(event){ //取得時間對象 var event=EventUtil.getEvent(event); //阻止默認(rèn)事件 EventUtil.preventDefault(); })
注意:
var form=document.getElementById("myForm); form.reset();
與submit事件不同,以這種方式提交表單,將會觸發(fā)reset事件。
2.表單字段
可以像訪問頁面中其他元素一樣,使用原生DOM方法訪問表單元素。此外,每個表單都有Elements屬性,該屬性是表單中所有表單元素(字段)的集合。這個elements是有序表,其中包含著表單中的所有字段,例如:
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/87870.html
摘要:本文將列舉四種不同原理的表單驗(yàn)證方法,并給出各方法在服務(wù)器上的實(shí)現(xiàn)。小結(jié)上述四種驗(yàn)證方法各有優(yōu)缺點(diǎn),用戶應(yīng)該根據(jù)需求選擇不同的方法。 前言 任何可以交互的站點(diǎn)都有輸入表單,只要有可能,就應(yīng)該對用戶輸入的數(shù)據(jù)進(jìn)行驗(yàn)證。無論服務(wù)器后端是什么樣的系統(tǒng),都不愿意把時間浪費(fèi)在一些無效的信息上,必須對表單數(shù)據(jù)進(jìn)行校驗(yàn),若有不符合規(guī)定的表單輸入,應(yīng)及時返回并給出相應(yīng)的提示信息。本文將列舉四種不同原理...
摘要:本文將列舉四種不同原理的表單驗(yàn)證方法,并給出各方法在服務(wù)器上的實(shí)現(xiàn)。小結(jié)上述四種驗(yàn)證方法各有優(yōu)缺點(diǎn),用戶應(yīng)該根據(jù)需求選擇不同的方法。 前言 任何可以交互的站點(diǎn)都有輸入表單,只要有可能,就應(yīng)該對用戶輸入的數(shù)據(jù)進(jìn)行驗(yàn)證。無論服務(wù)器后端是什么樣的系統(tǒng),都不愿意把時間浪費(fèi)在一些無效的信息上,必須對表單數(shù)據(jù)進(jìn)行校驗(yàn),若有不符合規(guī)定的表單輸入,應(yīng)及時返回并給出相應(yīng)的提示信息。本文將列舉四種不同原理...
摘要:如果想要屏蔽瀏覽器對表單的默認(rèn)驗(yàn)證行為,可以在表單元素上添加標(biāo)記。如果未修改,值為,如果修改過值為修改過的表單只要用戶修改過表單,無論輸入是否通過驗(yàn)證,該值都返回合法的表單這個布爾型的屬性用來判斷表單的內(nèi)容是否合法。 借助AngularJS,我們不需要花太多額外的精力就可以輕松實(shí)現(xiàn)客戶端表單驗(yàn)證功能。雖然 Web應(yīng)用安全不能完全依賴客戶端驗(yàn)證,但客戶端驗(yàn)證可以提供表單狀態(tài)的實(shí)時反饋。 ...
摘要:寫一個表單驗(yàn)證插件需求目標(biāo)簡單易用可擴(kuò)展如何簡單開發(fā)者要做的寫了一個表單,指定一個,指定其驗(yàn)證規(guī)則。調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 寫一個vue表單驗(yàn)證插件(vue-validate-easy) 需求 目標(biāo):簡單易用可擴(kuò)展 如何簡單 開發(fā)者要做的 寫了一個表單,指定一個name,指定其驗(yàn)證規(guī)則。 調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 調(diào)用重置表單方法重置表單 自...
摘要:寫一個表單驗(yàn)證插件需求目標(biāo)簡單易用可擴(kuò)展如何簡單開發(fā)者要做的寫了一個表單,指定一個,指定其驗(yàn)證規(guī)則。調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 寫一個vue表單驗(yàn)證插件(vue-validate-easy) 需求 目標(biāo):簡單易用可擴(kuò)展 如何簡單 開發(fā)者要做的 寫了一個表單,指定一個name,指定其驗(yàn)證規(guī)則。 調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 調(diào)用重置表單方法重置表單 自...
摘要:寫一個表單驗(yàn)證插件需求目標(biāo)簡單易用可擴(kuò)展如何簡單開發(fā)者要做的寫了一個表單,指定一個,指定其驗(yàn)證規(guī)則。調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 寫一個vue表單驗(yàn)證插件(vue-validate-easy) 需求 目標(biāo):簡單易用可擴(kuò)展 如何簡單 開發(fā)者要做的 寫了一個表單,指定一個name,指定其驗(yàn)證規(guī)則。 調(diào)用提交表單方法,可以獲取驗(yàn)證成功后的數(shù)據(jù)。 調(diào)用重置表單方法重置表單 自...
閱讀 1875·2021-11-18 13:20
閱讀 1224·2021-10-11 10:59
閱讀 3053·2021-08-24 10:01
閱讀 3586·2019-08-29 14:21
閱讀 3455·2019-08-29 14:15
閱讀 3599·2019-08-26 12:23
閱讀 3414·2019-08-26 11:46
閱讀 3432·2019-08-26 11:35