JS表單提交驗(yàn)證、input(type=number) 去三角 刷新驗(yàn)證碼
在進(jìn)行表單提交時(shí),需要對(duì)輸入框和文本域等的value的合理性進(jìn)行驗(yàn)證,可以編寫(xiě)form的onSubmit事件,代碼,踩過(guò)的坑;注意點(diǎn):
1、只有通過(guò)form里面的 <button type="submit" >
提交</button>進(jìn)行表單的提交才會(huì)觸發(fā)form的onSubmit事件,如果是通過(guò)button的onclick事件進(jìn)行表單提交則不會(huì)觸發(fā)form的onSubmit事件
2、 onSubmit事件的正確寫(xiě)法是:<form action="" method="post" onsubmit="return checkFrom();">
注意寫(xiě)上 return ,不寫(xiě)沒(méi)有作用
function checkFrom(){ var username=$('#username').val(); alert(username); var pwd=$('#pwd').val(); if(username==null || username==""){ $('#codeInfo').html("請(qǐng)輸入用戶名"); $('#username').focus(); return false; }else if(pwd==null || pwd==""){ $('#codeInfo').html("請(qǐng)輸入密碼"); $('#pwd').focus(); return false; }else{ return true; } }
3、HTML5,input 提供很多新型的type,省去了我們寫(xiě)JavaScript正則表達(dá)式來(lái)限定輸入值的類(lèi)型的時(shí)間,比如,number,email,tel等等,表示需要輸入合法的數(shù)字,郵箱,電話號(hào)碼等。但是我發(fā)現(xiàn)將type設(shè)置為number之后,讓它只接受數(shù)字的輸入,會(huì)出現(xiàn)兩個(gè)三角形,用于調(diào)整數(shù)字的大小(加1減1),
很明顯,有些場(chǎng)合我們不需要它們,影響美觀度,可利用以下方法將其去掉
<style type="text/css"> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{ -webkit-appearance: none !important; margin: 0; } input[type="number"]{-moz-appearance:textfield;} </style>
4、驗(yàn)證碼是常常見(jiàn)到的小部件,獲取驗(yàn)證碼,點(diǎn)擊刷新,應(yīng)傳遞一個(gè)參數(shù)避免多次獲取同一個(gè)驗(yàn)證碼,這時(shí)候常常考慮時(shí)間戳或者隨機(jī)數(shù),此處采用隨機(jī)數(shù)
<div class="form-group input-group"> <span class="input-group-addon" style="padding: 0px;"> <img alt="驗(yàn)證碼" src="<%=basePath %>code/verifyCode" title="看不清可點(diǎn)擊刷新驗(yàn)證碼" style="cursor:pointer;" onclick="this.src='<%=basePath %>code/verifyCode?d='+Math.random();"></span> <input type="number" class="form-control" id="code" placeholder="輸入驗(yàn)證碼" onblur="validateCode(this.value)"/> </div>
5、來(lái)個(gè)綜合的代碼吧
<style type="text/css"> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{ -webkit-appearance: none !important; margin: 0; } input[type="number"]{-moz-appearance:textfield;} </style> <script type="text/javascript"> function checkFrom(){ var username=$('#username').val(); alert(username); var pwd=$('#pwd').val(); if(username==null || username==""){ $('#codeInfo').html("請(qǐng)輸入用戶名"); $('#username').focus(); return false; }else if(pwd==null || pwd==""){ $('#codeInfo').html("請(qǐng)輸入密碼"); $('#pwd').focus(); return false; }else{ return true; } } </script>
form表單部分:
<form role="form" action="" method="post" onsubmit="return checkFrom();"> <hr /> <h5>Enter Details to Login</h5> <br /> <div class="form-group input-group"> <span class="input-group-addon"><i class="fa fa-tag"></i></span> <input type="text" class="form-control" placeholder="Your Username " name="username" id="username" /> </div> <div class="form-group input-group"> <span class="input-group-addon"><i class="fa fa-lock"></i></span> <input type="password" class="form-control" placeholder="Your Password" name="pwd" id="pwd" /> </div> <div class="form-group input-group"> <span class="input-group-addon" style="padding: 0px;"> <img alt="驗(yàn)證碼" src="獲取驗(yàn)證碼的URL" title="看不清可點(diǎn)擊刷新驗(yàn)證碼" style="cursor:pointer;" onclick="this.src='獲取驗(yàn)證碼的URL?d='+Math.random();"></span> <input type="number" class="form-control" id="code" placeholder="輸入驗(yàn)證碼" onblur="validateCode(this.value)" /> </div> <div class="form-group input-group"> <span id="codeInfo" style="color: #f55"></span> </div> <div class="form-group"> <label class="checkbox-inline"> <input type="checkbox" /> Remember me </label> <span class="pull-right"> <a href="index.html" rel="external nofollow" >Forget password ? </a> </span> </div> <button type="submit" class="btn btn-primary ">Login Now</button> </form>
以上所述是小編給大家介紹的JS表單提交驗(yàn)證、input(type=number) 去三角 刷新驗(yàn)證碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- 詳解JS數(shù)值Number類(lèi)型
- 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法
- JavaScript校驗(yàn)Number(4,1)格式的數(shù)字實(shí)例代碼
- js中Number數(shù)字?jǐn)?shù)值運(yùn)算后值不對(duì)的解決方法
- JavaScript基本類(lèi)型值-Number類(lèi)型
- 詳解js中Number()、parseInt()和parseFloat()的區(qū)別
- js中string和number類(lèi)型互轉(zhuǎn)換技巧(分享)
- javascript中Number的方法小結(jié)
- JavaScript中Number對(duì)象的toFixed() 方法詳解
- Javascript之Number對(duì)象介紹
- JS求Number類(lèi)型數(shù)組中最大元素方法
相關(guān)文章
JavaScript 一行代碼,輕松搞定浮動(dòng)快捷留言-V2升級(jí)版
前天熬了大半宿發(fā)了一篇[一行代碼輕松搞定快捷留言功能],同時(shí)發(fā)布了V1.0beta版的快捷留言功能和源代碼,之所以是beta版,就是當(dāng)時(shí)感覺(jué)雖然基本功能有了,但是還不夠完善,特性也不一定合理2010-04-04JS基于ES6新特性async await進(jìn)行異步處理操作示例
這篇文章主要介紹了JS基于ES6新特性async await進(jìn)行異步處理操作,結(jié)合實(shí)例形式分析了async await進(jìn)行異步處理操作的相關(guān)原理、步驟與注意事項(xiàng),需要的朋友可以參考下2019-02-02變量聲明時(shí)命名與變量作為對(duì)象屬性時(shí)命名的區(qū)別解析
這篇文章主要介紹了變量聲明時(shí)命名與變量作為對(duì)象屬性時(shí)命名的區(qū)別。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12JS實(shí)現(xiàn)將對(duì)象轉(zhuǎn)化為數(shù)組的方法分析
這篇文章主要介紹了JS實(shí)現(xiàn)將對(duì)象轉(zhuǎn)化為數(shù)組的方法,結(jié)合實(shí)例形式分析了javascript操作及轉(zhuǎn)換json數(shù)組相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-01-01JavaScript中async await更優(yōu)雅的錯(cuò)誤處理方式
async/await中的異常處理很讓人混亂,盡管有很多種方式來(lái)應(yīng)對(duì)async 函數(shù)的異常,但是連經(jīng)驗(yàn)豐富的開(kāi)發(fā)者有時(shí)候也會(huì)搞錯(cuò),所以這篇文章主要給大家介紹了關(guān)于JavaScript中async await更優(yōu)雅的錯(cuò)誤處理方式的相關(guān)資料,需要的朋友可以參考下2021-09-09js實(shí)現(xiàn)簡(jiǎn)單的手風(fēng)琴效果
本文主要介紹了js實(shí)現(xiàn)簡(jiǎn)單手風(fēng)琴效果的實(shí)例,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02基于javascript顯示當(dāng)前時(shí)間以及倒計(jì)時(shí)功能
這篇文章主要為大家詳細(xì)介紹了基于javascript顯示當(dāng)前時(shí)間以及倒計(jì)時(shí)功能的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-03-03