微信小程序?qū)崿F(xiàn)表單驗(yàn)證
微信小程序的表單驗(yàn)證,供大家參考,具體內(nèi)容如下
需要用到一個(gè)插件WxValidat.js
在需要使用的page js文件下導(dǎo)入
import WxValidate from '../../utils/WxValidate.js'
主要內(nèi)容
WXML內(nèi)容
<form bindsubmit="formSubmit">
<view class="weui-cells__title">用戶名</view>
<view class="weui-cells weui-cells_after-title">
<view class="weui-cell weui-cell_input">
<input class="weui-input" type="text" name="userName" placeholder="請(qǐng)輸入用戶名"/>
</view>
</view>
<view class="weui-cells__title">密碼</view>
<view class="weui-cells weui-cells_after-title">
<view class="weui-cell weui-cell_input">
<input class="weui-input" type="text" name="password" placeholder="請(qǐng)輸入密碼"/>
</view>
</view>
<view class="weui-cells__title">手機(jī)號(hào)</view>
<view class="weui-cells weui-cells_after-title">
<view class="weui-cell weui-cell_input">
<input class="weui-input" type="text" name="phone" placeholder="請(qǐng)輸入手機(jī)號(hào)"/>
</view>
</view>
<view class="btn-area">
<button formType="submit">Submit</button>
<button formType="reset">Reset</button>
</view>
</form>
js內(nèi)容
/**
* 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面加載
*/
onLoad: function (options) {
this.initValidate()//驗(yàn)證規(guī)則函數(shù),初始化字段規(guī)則和字段提示信息
},
initValidate() {
const rules = {
userName: { //用戶名
required: true,
minlength:2
},
password: { //密碼
required: true
},
phone:{ //手機(jī)號(hào)
required:true,
tel:true
}
}
const messages = { //提示信息
userName: {
required: '請(qǐng)?zhí)顚懶彰?,
minlength:'請(qǐng)輸入正確的名稱'
},
password: {
required: '請(qǐng)?zhí)顚懨艽a'
},
phone:{
required:'請(qǐng)?zhí)顚懯謾C(jī)號(hào)',
tel:'請(qǐng)?zhí)顚懻_的手機(jī)號(hào)'
}
}
this.WxValidate = new WxValidate(rules, messages)
},
//調(diào)用驗(yàn)證函數(shù)
formSubmit: function (e) {
console.log('form發(fā)生了submit事件,攜帶的數(shù)據(jù)為:', e.detail.value)
const params = e.detail.value
//校驗(yàn)表單
if (!this.WxValidate.checkForm(params)) {
const error = this.WxValidate.errorList[0]
console.log(error);
return false
}
console.log("yes");
return true;
},
值得注意的是: WxValidate的errorList列表返回的是一個(gè)對(duì)象。

而且驗(yàn)證的字段名應(yīng)該和表單組件對(duì)應(yīng)的name一一對(duì)應(yīng)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
使用KrpanoToolJS在瀏覽器切圖的實(shí)例詳解
這篇文章主要介紹了使用KrpanoToolJS在瀏覽器切圖的實(shí)例詳解,大概是需要在瀏覽器中將全景圖轉(zhuǎn)為立方體圖、多層級(jí)瓦片圖,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10
微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)自定義加載圖標(biāo)功能,非常不錯(cuò)具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-07-07
使用JavaScript計(jì)算前一天和后一天的思路詳解
這篇文章主要介紹了使用JavaScript計(jì)算前一天和后一天的思路,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12
分享兩個(gè)手機(jī)訪問(wèn)pc網(wǎng)站自動(dòng)跳轉(zhuǎn)手機(jī)端網(wǎng)站代碼
這篇文章主要介紹了分享兩個(gè)手機(jī)訪問(wèn)pc網(wǎng)站自動(dòng)跳轉(zhuǎn)手機(jī)端網(wǎng)站代碼,需要的朋友可以參考下2015-01-01
詳解小程序如何改變onLoad的執(zhí)行時(shí)機(jī)
這篇文章主要介紹了詳解小程序如何改變onLoad的執(zhí)行時(shí)機(jī),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
JavaScript中判斷為整數(shù)的多種方式及保留兩位小數(shù)的方法
這篇文章主要介紹了JavaScript中判斷為整數(shù)的多種方式,以及保留兩位小數(shù)的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
JS獲取當(dāng)前日期時(shí)間并定時(shí)刷新示例
這篇文章主要介紹了JS如何獲取當(dāng)前日期時(shí)間并執(zhí)行定時(shí)刷新,示例代碼如下,需要的朋友不要錯(cuò)過(guò)2014-06-06

