⚡ 30秒快速掌握重點
傳統表單驗證等到送出才告知錯誤,顧客要往回找哪裡填錯,挫折感極大。即時驗證在顧客填完該欄位就立刻檢查,錯誤訊息明確且當下可修正。研究顯示即時驗證能降低表單放棄率 22%、減少完成時間 42%。本文涵蓋驗證時機、錯誤訊息撰寫、視覺回饋、密碼強度設計、無障礙考量等完整實作。
三種驗證時機與適用情境
- 失焦驗證(onblur):離開欄位時檢查,最常用、最不擾人。適合 Email、電話、地址等格式檢查
- 即時驗證(onchange/oninput):每次輸入都檢查,適合密碼強度、字數限制等需即時回饋的場景
- 提交驗證(onsubmit):送出前最後檢查,作為雙重保險防止跳過前面驗證
關鍵原則:不要「正在輸入時」就跳紅字錯誤訊息,那會很煩。最佳做法是顧客「離開欄位」才檢查,只有密碼強度等特殊情境才邊輸入邊驗證。
錯誤訊息撰寫的三個原則
- 明確:說出具體哪裡錯了,不要只說「輸入有誤」
- 具體:提供正確格式範例,讓顧客知道怎麼修正
- 不指責:用「請輸入...」而不是「你填錯了」
範例對比:
- ❌ 不佳:「Email 格式錯誤」
- ⭕ 良好:「請輸入有效的 Email 格式(例如 name@example.com)」
- ❌ 不佳:「電話無效」
- ⭕ 良好:「手機請輸入 09 開頭 10 碼,市話請含區碼如 02-XXXXXXXX」
視覺回饋的設計
完整的視覺回饋系統:
- 成功狀態:欄位邊框淺綠 + 右側小綠色勾號(簡短鼓勵)
- 錯誤狀態:欄位邊框紅色 + 右側 ⚠ 圖示 + 下方紅色錯誤訊息
- 輸入中:欄位邊框淺藍 + 焦點高亮(讓使用者知道目前在這個欄位)
- 禁用狀態:欄位灰底淺色文字(明顯不可編輯)
重要:不要只靠顏色傳達狀態(色盲使用者看不出來),要搭配圖示與文字訊息。
常見欄位的驗證範例
- Email:檢查 @ 與 . 結構,建議用 RFC 5322 標準正規表示式
- 台灣手機:09 開頭共 10 碼純數字(可含 - 符號自動移除)
- 市話:區碼開頭,台北 02、台中 04 等
- 統一編號:8 碼純數字,可加上財政部 API 驗證真實存在
- 身分證字號:1 碼英文 + 9 碼數字,可實作檢查碼演算法
- 信用卡號:13-19 碼數字,可用 Luhn 演算法驗證
- 密碼:至少 8 碼,建議包含大小寫、數字、特殊字元
密碼強度的即時顯示
密碼強度檢查是即時驗證的經典案例:
- 強度條:顯示弱(紅)/中(橘)/強(綠)三段
- 條件清單:「至少 8 碼 ✗」「含英文 ✓」「含數字 ✓」「含特殊字元 ✗」
- 顯示密碼按鈕:眼睛圖示讓顧客切換明碼/密碼顯示,確認沒打錯
- 常見弱密碼提示:偵測到 123456、password 等弱密碼時提示更換
無障礙設計考量
無障礙標準(WCAG 2.1)對表單驗證的要求:每個欄位都要有 <label> 連結(讓螢幕閱讀器知道是什麼欄位);錯誤訊息要用 aria-describedby 連結到欄位(讓螢幕閱讀器讀出);錯誤狀態要用 aria-invalid="true" 標記;不要只靠顏色判斷錯誤(要有圖示或文字);錯誤訊息對比度至少 4.5:1;提交失敗時將焦點移到第一個錯誤欄位,鍵盤使用者也能找到問題。
行動版的特殊處理
行動版表單驗證要注意:錯誤訊息不要被軟鍵盤遮住(自動捲動到錯誤欄位上方);輸入 Email 時喚起 Email 鍵盤(type="email");輸入電話時喚起數字鍵盤(type="tel");輸入郵遞區號時喚起純數字鍵盤;觸控目標至少 44px 高度;錯誤訊息字級至少 14px 確保看得清楚。
🚫 電商大忌:千萬不要犯這些錯誤
- 等到送出才驗證,顧客填完整張表還要往回找錯在哪
- 錯誤訊息只說「無效輸入」沒有具體說明該怎麼改
- 邊輸入邊跳紅字錯誤(連 e 字母都還沒打完就嫌格式錯)
- 只靠紅色標示錯誤,色盲使用者完全看不出哪裡有問題
- 密碼強度等送出才告知,顧客已輸入兩次重來很挫折
🚀 Shopto 如何幫您解決這個問題?
NT$24,800/年起,享受完整電商解決方案:
✓結帳表單內建完整即時驗證機制
✓錯誤訊息中文化且具體說明修正方式
✓密碼強度即時顯示與弱密碼提示
✓行動版鍵盤類型自動切換
✓符合 WCAG 2.1 無障礙標準
常見問題解答
Q:什麼是表單即時驗證?為什麼重要?
表單即時驗證是「顧客輸入或離開欄位時立刻檢查格式」,不等到提交才告知錯誤。研究顯示即時驗證能降低表單放棄率 22%、減少完成時間 42%。
Q:即時驗證的時機怎麼設定?
關鍵時機:失焦時驗證(onblur)、邊輸入邊驗證(onchange,適合密碼強度)、全表提交前最後檢查(onsubmit,當作雙重保險)。
Q:錯誤訊息該怎麼寫才不嚇人?
原則:明確、具體、不指責。要告訴顧客「該怎麼做」而不是「你錯了什麼」。例如「請輸入有效的 Email 格式(例如 name@example.com)」。
Q:視覺回饋該怎麼設計?
色彩規範:成功(綠色 + 勾號)、錯誤(紅色 + ⚠ 圖示)、警告(橘色 + i 圖示)。不要只靠顏色,要搭配圖示與文字訊息。
Q:密碼強度檢查該即時顯示嗎?
絕對要即時顯示。顧客輸入密碼時下方即時更新強度條並列出未滿足的條件,看到綠色勾號累積會有成就感。
準備好打造成功電商了嗎?
立即加入 Shopto,讓專業平台幫您解決所有電商難題