在本文中,我們查看HTML表單字段和HTML5提供的驗證選項。我們還將研究如何通過使用CSS和JavaScript來增強它們。
鑰匙要點
通過引入自動化許多驗證過程的新輸入類型和屬性,可以增強形式驗證,從而減少了廣泛的JavaScript。
HTML5中的約束驗證允許瀏覽器在提交之前根據指定的規則自動檢查用戶輸入,增強用戶體驗和數據完整性。
>
客戶端驗證雖然有助於捕獲常見錯誤,但必須補充服務器端驗證,以確保數據安全性和完整性。
- >自定義JavaScript輸入應在可能的情況下避免,因為它們使可訪問性複雜並可能與本機瀏覽器函數衝突。
- > CSS可用於基於其驗證狀態樣式的輸入字段,其偽級為:有效和:無效,允許對用戶輸入進行動態反饋。
>
HTML5中的約束驗證API啟用HTML無法處理的自定義驗證方案,例如比較兩個字段或異步檢查,增強形式功能和用戶交互。 - >
- 什麼是約束驗證?
- 每個表單字段都有目的。而且這個目的通常受到矛盾的約束,或者規定了應該和不應將其輸入每個表單字段的規則。例如,電子郵件字段將需要有效的電子郵件地址;密碼字段可能需要某些類型的字符,並且具有最少的必需字符。文本字段可能會限制可以輸入多少個字符。
>
- >現代瀏覽器能夠檢查用戶觀察到這些約束是否存在,並在違反這些規則時警告它們。這被稱為contraint驗證。
>
>客戶端與服務器端驗證
>大多數JavaScript代碼在語言處理早期所處理的客戶端表單驗證的早期寫作。即使在今天,開發人員也花費大量時間編寫功能來檢查字段值。在現代瀏覽器中,這仍然需要嗎?可能不是
。在大多數情況下,這實際上取決於您要做的事情。
>
,但首先,這是一個很大的警告信息:
>客戶端驗證是一種良好的效果,可以防止在應用程序浪費時間和帶寬將數據發送到服務器之前的常見數據輸入錯誤。它不能替代服務器端驗證!
>
始終對數據服務器端進行消毒。並非每個請求都來自瀏覽器。即使這樣做,也無法保證瀏覽器驗證了數據。任何知道如何打開瀏覽器的開發人員工具的人也可以繞過您精心製作的HTML和JavaScript。
> html5輸入字段
html提供:
,但您將最常使用:
<span><span><span><input</span> type<span>="text"</span> name<span>="username"</span> /></span>
</span>
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
類型屬性設置了控制類型,並且有很大的選擇:
>
> type |
描述 |
按鈕
沒有默認行為的按鈕
複選框
一個支票/勾號
顏色
彩色拾取器
日期
一年,月和一天的選擇日期
DateTime-Local
日期和時間挑選器
電子郵件
電子郵件輸入字段
文件
文件拾取器
隱
一個隱藏的字段
圖像
顯示由SRC屬性定義的圖像的按鈕
月
一個月和年度的選手
數字
一個編號輸入字段
密碼
密碼輸入字段,帶有晦澀的文字
收音機
單選按鈕
範圍
滑塊控件
重置
一個按鈕將所有表單輸入其默認值的輸入(但避免使用此),因為它很少有用)
搜尋
搜索條目字段
提交
表單提交按鈕
電話
電話號碼輸入字段
文字
文本輸入字段
時間
沒有時區的時間選擇器
URL
URL輸入字段
星期
一周和年度選手
如果您省略類型屬性或不支持選項,則瀏覽器會返回文本。現代瀏覽器對所有類型都有良好的支持,但是舊瀏覽器仍將顯示一個文本輸入字段。
其他有用的屬性包括:
屬性
描述 |
接受
文件上傳類型
alt
圖像類型的替代文本
自動完成
用於現場自動完成的提示
自動對焦
重點字段在頁面加載上
捕獲
媒體捕獲輸入方法
檢查
檢查復選框/收音機
禁用
禁用控件(不會驗證或提交其價值)
形式
使用此ID與表格相關聯
形式
在提交和圖像按鈕上提交的URL
輸入模式
數據類型提示
列表
自動完成選項的ID
最大限度
最大值
最大長度
最大弦長
最小
最小值
最小長度
最小字符串長度
姓名
控制的名稱,提交給服務器
圖案
正則表達模式,例如一個或多個大寫字符的[A-Z]
佔位符
當字段值為空時,佔位符文字
可讀
該字段不是可編輯的,但仍將得到驗證和提交
必需的
需要該字段
尺寸
控制大小(通常在CSS中覆蓋)
拼寫檢查
設置真或錯誤的拼寫檢查
src
圖像URL
步
數字和範圍的增量值
類型
現場類型(見上文)
價值
初始值
| html輸出字段
以及輸入類型,HTML5提供僅讀取輸出:
- >輸出:計算或用戶操作的文本結果
- 進度:具有值和最大屬性的進度欄
- 米:可以根據設定的值,最小,最大,低,高和最佳屬性在綠色,琥珀和紅色之間變化的比例
>輸入標籤
>字段應具有關聯的
以上是HTML表單和約束驗證的完整指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!