前言
在目前的產品互動中,輸入資料然後程式或者產品對資料進行驗證是非常常見的需求,而產品進行驗證的目的性也很明確,就是為了避免髒資料進入資料庫。但是從產品互動本身來講,產品是為了讓使用者更加準確的、簡單的使用一個功能,而不是在出錯或者使用者目的很明確的時候告訴他輸入錯誤了。
資料完整 && 資料免疫
資料完整換句話就是產品對資料庫中儲存的資料有效性、科學性是有要求的,而目前的這些要求為了控制來源,讓嚴格的要求控制了使用者的體驗和輸入。(而對於已經錄入到資料庫的資料,預設認為是正確的)
目前大部分產品是如何保證這方面的呢?
可以看到大部分產品在需要使用者資料輸入的時候,在提交之前都會做各種驗證以及相應的提示,較好的產品還會做出很人性化的提示,告訴自己哪些欄位是否必填,以及驗證規則是什麼。但這樣在做好資料完整的同時丟失了較好的使用者體驗。我們可以操作一些資料讓資料具有免疫能力。
輸入控制元件
這個是比較科學常見的方案之一,提供對應資料的資料來源,讓其是在控制範圍內選擇的。比較常見的有 :日期選擇控制元件,選擇下拉選單,遠端搜尋輸入框,數字控制元件,數字鍵盤,單選多選控制元件,選單式選擇。
技術轉換
在某些情況下,同等效力的輸入資料應該是被支援的,雖然這些資料不是直接符合要求的,但可以經過一些技術手段進行自動的轉換,最終實現我們的目的。
常見的技術場景比如:保留兩位小數,自動轉換金額型別,資料格式(文字與資料轉換),非標準排版與標準排版,去空格等等
校驗前置 && 動態校驗 && 操作不可用
校驗前置 && 操作不可用
一般情況下,這兩個是同時設定的,也就是在校驗時動態校驗,當其符合基本的操作要求的時候,才會讓操作按鈕變為可用操作,否則為禁用或者錯誤不可操作狀態,這也叫校驗前置,對於每個必傳的欄位必須有明確的標識來說明必填性以及其正確的規則或者示範性的資料輸入。
動態校驗 && 操作不可用
動態校驗是指標對輸入資料的動態監聽,當其符合規則時,放開其一個邏輯的驗證,如果所有的條件都符合了,把操作重置為可用 ;否則變為不可用 ;
另一條自然是動態校驗的觸發規則:常見的有 :獲得/失去焦點,值改變,互動事件(滑鼠、鍵盤、手勢),其他(複製貼上),監聽系統相關資訊。
智慧糾正
當使用者真的輸錯了,但是無法確定自己真正輸入的時候,提供更多的方式或者提示讓他得到正確的返回。曾經輸入法裡有些字我們是不知道怎麼唸的,這時候輸入法可以提供一些偏旁或者拼字的提示,讓我們找到那個字,而不是僅僅靠拼音,或者把這個字複製貼上出來再查拼音。
也有些時候是概念轉換,或者是相近詞語。
比如數字的1 與漢字的一,在某些場景下我們需要使用者輸入的是漢字的1,但使用者不知道其怎麼寫或者控制輸入的規規性,可以將某些特定的內容進行智慧糾正,然後讓使用者抉擇是否用這個 ;
還有一種是相近詞語提供選擇,在一些相近詞語的時候,可能使用者原來只知道一個模糊的概念,當通過我們的產品他能更清晰的定位和概念化自己想要輸入的內容,以及自己真正想要的是什麼,這個在我們搜尋商品的比如衣服的時候很常見。我們搜尋襪子,但不知道也沒有概念選什麼種類,然後看到了有長筒襪,短襪,船襪,絲襪,棉襪等,有些這些提供的概念和相近選擇,使用者可以更清晰的去選擇得到自己想要的內容,這也是我們系統想要使用者輸入的。
總結
今天的讀書筆記分享就到這裡,《About face互動設計4》這本書還是相當經典的,作為產品、互動設計師或者前端都是有必要讀下的,讓你的產品錦上添花。