字符串函數(shù):搞定增強(qiáng)型“注冊(cè)驗(yàn)證”條件設(shè)置
在上一篇的《中繼器使用場(chǎng)景(五):真實(shí)環(huán)境注冊(cè)、多身份登錄、找回密碼》中提到,會(huì)專門就注冊(cè)條件驗(yàn)證的案例出一篇教程,今天就詳述如下:
原型參照:QQ注冊(cè)。為了集中講解,將qq昵稱注冊(cè)和郵箱賬號(hào)注冊(cè)合二為一,為大家演示。
先看演示GIF圖
功能梳理
1、昵稱不能包含中文,不能為空,失去焦點(diǎn)時(shí),會(huì)出現(xiàn)不同的提示
2、密碼不能包含空格,長(zhǎng)度為8-16位,包含字母、數(shù)字、特殊符號(hào)(英文半角符號(hào))不少于2種
3、密碼框在密碼輸入變化時(shí),實(shí)時(shí)檢測(cè)是否符合標(biāo)準(zhǔn)(留意gif圖中“灰色!”和“綠色√”圖標(biāo)的變化)
4、點(diǎn)擊眼睛圖標(biāo),能將密碼中的“●”顯示為輸入的文本,松開鼠標(biāo)時(shí),又恢復(fù)為“●”
5、密碼框失去焦點(diǎn)時(shí),如果密碼不符合規(guī)則,按優(yōu)先順序顯示錯(cuò)誤提示(留意gif圖中紅色錯(cuò)誤提示的出現(xiàn)規(guī)律)
6、郵件地址不能為空,要有“.”“@”符號(hào),不能包含中文,“.”和“@”之間要有字符,不能有兩個(gè)@
7、手機(jī)號(hào)必須是數(shù)字,必須是1開頭,必須滿11位
8、驗(yàn)證碼為兩個(gè)數(shù)字兩個(gè)字母組合,每刷新一次,更換一次,隨機(jī)更換,不重復(fù)。
9、驗(yàn)證碼欄不能為空,不能和驗(yàn)證圖片不符
需要用到的函數(shù)
1、length:獲取當(dāng)前文本對(duì)象的長(zhǎng)度,即字符個(gè)數(shù);1個(gè)漢字的長(zhǎng)度按1計(jì)算。
2、charAt(index):獲取當(dāng)前文本對(duì)象中指定位置的字符,index為大于等于0的整數(shù)。位置從0開始算
3、charCodeAt(index):獲取當(dāng)前文本對(duì)象中指定位置字符的Unicode編碼,起始位置從0開始。
4、indexOf(‘searchValue’):從左至右獲取查詢字符串在當(dāng)前文本對(duì)象中首次出現(xiàn)的位置。未查詢到時(shí)返回值為-1。
5、lastIndexOf(‘searchvalue’):從右至左獲取查詢字符串在當(dāng)前文本對(duì)象中首次出現(xiàn)的位置。未查詢到時(shí)返回值為-1。
6、數(shù)字函數(shù)Math.random():隨機(jī)數(shù)函數(shù),返回一個(gè)0~1之間的隨機(jī)數(shù)。
7、數(shù)字函數(shù)Math.floor(x):向下取整函數(shù),獲取小于或者等于指定數(shù)值的最大整數(shù)。x為數(shù)字
原型制作
第一部分 昵稱注冊(cè)驗(yàn)證
元件分布
交互設(shè)置
特別說(shuō)明:
- nicheng文本框和nicheng2文本框都要隱藏邊框,邊框顏色的變化靠矩形nicheng□來(lái)表現(xiàn)
- charAt(index)的起始位置為0而不是1,這是“LVAR1.length-1”的原因
- 當(dāng)按下Backspace鍵即退格刪除鍵時(shí),nicheng2文字==nicheng的原始文本,nicheng2比nicheng多一個(gè)字符,多的這個(gè)字符就是記錄nicheng被刪除的那個(gè)字符??聪路紾IF示例
這個(gè)交互有一定的瑕疵,就是按退格鍵時(shí)要從后向前依次刪除,能夠正常演示,如果是鼠標(biāo)隨意插入到漢字的前后,進(jìn)行刪除,就不能正常判斷了。
這個(gè)靠AXURE自身是解決不了的,會(huì)寫JS編碼的朋友,可以在axure中寫入JS編碼來(lái)實(shí)現(xiàn)。也歡迎會(huì)寫代碼的朋友,在回復(fù)中留言。
第二部分 密碼的注冊(cè)驗(yàn)證
元件分布
交互設(shè)置
最后加上,密碼可見(jiàn)性的交互
特別說(shuō)明:
為什么一定是英文半角符號(hào),因?yàn)樵趯?shí)際寫代碼的過(guò)程中,當(dāng)輸入密碼時(shí),會(huì)只允許調(diào)用英文鍵盤,不會(huì)出現(xiàn)漢字和全角符號(hào),所以大家在測(cè)試演示原型時(shí),要輸入半角英文符號(hào)測(cè)試。
第三部分 郵箱地址的注冊(cè)驗(yàn)證
元件分布
交互設(shè)置
特別說(shuō)明:有興趣的朋友,可以將“不能含有漢字”的交互加入進(jìn)去,在這里就不再贅述
第四部分 手機(jī)號(hào)碼的注冊(cè)驗(yàn)證
元件分布
交互設(shè)置
特別說(shuō)明:有興趣的朋友,可以將“不能含有漢字”的交互加入進(jìn)去,在這里就不再贅述,還可以加入“不能有5個(gè)以上相同的數(shù)字”的交互,用Unicode判斷即可
第五部分 驗(yàn)證碼的注冊(cè)驗(yàn)證
元件分布
交互設(shè)置
[[Math.floor(Math.random()*10)]]? 取0-9的隨機(jī)數(shù)
[[LVAR1.charAt(Math.floor(Math.random()*52))]] 隨機(jī)截取寫有52個(gè)字母的zimu文本框中的字母
所有關(guān)于靠函數(shù)驗(yàn)證注冊(cè)條件的交互完畢。
本文由 @bobowang 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自 Pexels ,基于 CC0 協(xié)議
RP文件方便分享嗎?非常感謝 QQ郵箱109838147@qq.com
RP文件方便分享嗎?非常感謝 QQ郵箱1026323803@qq.com
作者您好,我剛剛按照你的原型,完成了昵稱的驗(yàn)證,但是當(dāng)我輸入 兩個(gè)漢字時(shí)候, 比如 : 輸入 “你好”,這時(shí)能提示錯(cuò)誤信息,包含漢字,但是當(dāng)我Backspace一個(gè)“好”時(shí),剩余“你”, 就不報(bào)錯(cuò)了,直接綠色對(duì)號(hào)出來(lái)了。是我哪里做錯(cuò)了嗎?
rp文件方便分享下么,謝謝,15774609552@163.com
求分享源文件
十分詳細(xì) 就是很費(fèi)時(shí)間。。
熟練之后,不費(fèi)事,核心功能高保真,是必須的
隨機(jī)生成字母這個(gè)公式不對(duì)啊
設(shè)置對(duì)局部變量對(duì)應(yīng)的元件文字
能分享下rp文件嗎,郵箱:530264140@qq.com,謝謝
確實(shí)厲害,但是太浪費(fèi)時(shí)間了
絲毫不費(fèi)時(shí)間,例如注冊(cè)、登陸、購(gòu)物車結(jié)算、搜索、篩選、評(píng)論增刪,都是web或app的核心功能,核心功能的高保真程度,是產(chǎn)品整體思路的形象化。熟練掌握后,絲毫不費(fèi)時(shí)間。反而是讓自己脫穎而出的關(guān)鍵。
其實(shí),現(xiàn)在各廠產(chǎn)品的注冊(cè)登錄用的都是共享組件,基本不需要產(chǎn)品來(lái)進(jìn)行過(guò)多的策劃。但是作為單獨(dú)講解Axure使用技巧的文章來(lái)說(shuō),確實(shí)很用心,看得出作者是一個(gè)喜歡鉆研的同學(xué)。
建議用正常流、非正常流和異常流的思路來(lái)梳理會(huì)更清晰。
作為產(chǎn)品經(jīng)理上對(duì)著客戶,內(nèi)對(duì)著技術(shù)。為什么會(huì)出axure這個(gè)軟件,就是讓產(chǎn)品經(jīng)理能少費(fèi)嘴去描述,因?yàn)橐淳褪菦](méi)人聽,要么就是聽不懂,再就是說(shuō)不清。把真實(shí)場(chǎng)景呈現(xiàn)出來(lái),客戶一目了然,技術(shù)全都明白。所謂交互文檔、產(chǎn)品文檔,都如同ppt一樣是畫花用的,誰(shuí)會(huì)去看?核心功能要盡量具像化,axure表現(xiàn)不出來(lái)的再去標(biāo)注。月薪1萬(wàn)的產(chǎn)品經(jīng)理,基本靠嘴靠圖片;月薪二萬(wàn)的,能動(dòng)手盡量不BB,原型動(dòng)態(tài)化;月薪三萬(wàn)的,客戶溝通能力一級(jí)棒,哪有坑自己心知肚明,原型哪里應(yīng)該重點(diǎn)高保真,哪里一筆帶過(guò),輕重明確,和技術(shù)總監(jiān)溝通在點(diǎn)兒上,技術(shù)想犯懶,門兒都沒(méi)有。
這個(gè)登錄注冊(cè)的,如何適配多國(guó)語(yǔ)言呢?某些規(guī)則,只適用于國(guó)內(nèi)吧
Axure不是為中國(guó)研發(fā)的
贊同bobo同學(xué)的觀點(diǎn)。原型的最關(guān)鍵的一個(gè)用戶,就是指導(dǎo)開發(fā),確保少踩坑。我自己以前的習(xí)慣是用業(yè)務(wù)流程的思路來(lái)制作原型圖,能夠清晰的讓開發(fā)看得懂。