WxValidate插件是参考 jQuery Validate 封装的,为小程序表单提供了一套常用的验证规则,包括手机号码、电子邮件验证等等,同时提供了添加自定义校验方法,让表单验证变得更简单。

  首先插件的下载地址和官方文档:https://github.com/skyvow/wx-extend

  具体的WxValidate.js文件的位置在wx-extend/src/assets/plugins/wx-validate/WxValidate.js

1、引入方法:将插件文件拷贝到你所需要的文件目录下

2、采用局部引用的方式将插件引入到你所需要的页面的JS文件里,具体操作如下

import WxValidate from '../../utils/WxValidate.js'

3、在wxml文件中对表单组件的数据绑定,否则无论表单组件如何填写,都无法验证规则。表单组件的绑定方法如下

    <view class="issue_item">
<input focus name="title" value="{{title}}" placeholder='请输入问题描述' />
</view>

  主要的方法就是在需要验证的input框内加入value值的绑定,其他的组件同理

4、验证规则的书写。

  在onLoad函数中加入验证规则函数,即验证规则和报错规则的代码

  onLoad: function () {
// 初始化验证方法
this.initValidate()
},
  //报错
showModal(error) {
wx.showModal({
content: error.msg,
showCancel: false,
})
},
//验证函数
initValidate() {
const rules = {
title: {
required: true,
maxlength:
},
dbType: {
required: true
},
priority: {
required: true
},
description: {
required: true
}
}
const messages = {
title: {
required: '请输入问题描述',
minlength: '最多只能输入128个字符'
},
dbType: {
required: '请选择问题类型'
},
priority: {
required: '请选择问题等级'
},
description: {
required: '请输入问题详情'
}
}
this.WxValidate = new WxValidate(rules, messages)
},

5、调用校验规则

  submitIssue (e){
let issueInfo = e.detail.value
//校验表单
if (!this.WxValidate.checkForm(issueInfo)) {
const error = this.WxValidate.errorList[]
this.showModal(error)
return false
}
wx.showLoading({
title: '玩命加载中',
mask: true
})

微信小程序表单校验WxValidate.js使用的更多相关文章

  1. 微信小程序表单验证(WxValidate使用)

    参考博客: https://www.cnblogs.com/zhangxiaoyong/p/10166951.html https://github.com/wux-weapp/wx-extend/b ...

  2. 微信小程序表单弹窗实例

    开发中有时候会碰到需要一个表单弹窗来处理数据的提交处理,然后这次发布的这套源码就是解决这个问题! <!--button--> <view class="btn" ...

  3. 微信小程序表单验证

    参考:http://www.cnblogs.com/zhangxiaoyong/p/10166951.html

  4. 微信小程序-06-详解介绍.js 逻辑层文件-注册页面

    上一篇介绍的是 app.js 逻辑层文件中注册程序,对应的每个分页面都会有的 js 文件中 page() 函数注册页面 微信小程序-06-详解介绍.js 逻辑层文件-注册页面 宝典官方文档: http ...

  5. 微信小程序——3、逻辑js文件

    逻辑层js文件 微信小程序前端进行了层次划分,分为逻辑层和视图层.逻辑层实现对数据的加工和处理.与HTML页面相似,逻辑层使用JavaScript编写.逻辑层将数据处理后发送至视图层,同时接受视图层的 ...

  6. 微信小程序-05-详解介绍.js 逻辑层文件

    上一篇介绍了关于.json 的配置文件,本篇介绍关于.js 逻辑层文件 微信小程序-05-详解介绍.js 逻辑层文件 宝典官方文档: https://developers.weixin.qq.com/ ...

  7. 微信小程序之获取验证码js

    在微信小程序中怎样实现获取验证码的倒计时功能捏,倒计时的原理是一样一样的,就是某些地方需要注意. 第一步:结构 <view class='get-code' wx:if="{{!isS ...

  8. 微信小程序笔记<四>page.js —— 页面注册

    小程序的每个页面都是独立的,每个页面都必须有 page.js 和 page.wxhl 文件,page.json 和 page.wxss 文件非必要文件,注意如果创建 page.json 则至少保证有一 ...

  9. 微信小程序里解决app.js onLaunch事件与小程序页面的onLoad加载前后异常问题

    使用 Promise 解决小程序页面因为需要app.js onLaunch 参数导致的请求失败 app.js onLaunch 的代码 "use strict"; Object.d ...

随机推荐

  1. OpenJ_POJ C16B Robot Game 打表找规律

    Robot Game 题目连接: http://acm.hust.edu.cn/vjudge/contest/122701#problem/B Description Sgeoghy has addi ...

  2. spring boot 集成 druid

    写在前面 因为在用到spring boot + mybatis的项目时候,经常发生访问接口卡,服务器项目用了几天就很卡的甚至不能访问的情况,而我们的项目和数据库都是好了,考虑到可能是数据库连接的问题, ...

  3. 群晖NAS百度云Docker客户端下载目录没有权限的问题解决

    针对这篇文章:https://zhuanlan.zhihu.com/p/42267779的问题,需要ssh进去群晖,然后把目录设置成777权限.命令如下: sudo chmod -R 777 /vol ...

  4. 性能优化:使用SparseArray代替HashMap<Integer,Object>(转)

    HashMap是java里比较常用的一个集合类,我比较习惯用来缓存一些处理后的结果.最近在做一个Android项目,在代码中定义这样一个变量,实例化时,Eclipse却给出了一个 performanc ...

  5. LPC43xx SGPIO Experimentation

    LPC4350 SGPIO Experimentation The NXP LPC43xx microcontrollers have an interesting, programmable ser ...

  6. c# SerialPort会出现“已关闭 Safe handle”的错误

    c# SerialPort使用时出现“已关闭 Safe handle”的错误我在开发SerialPort程序时出现了一个问题,在一段特殊的扫描代码的时候会出现“已关闭 Safe handle”的错误, ...

  7. Javascript Array和String的互转换。

    Array类可以如下定义: var aValues = new Array(); 如果预先知道数组的长度,可以用参数传递长度 var aValues = new Array(20); -------- ...

  8. Golang 特性简介

    by sheepbao 主要大概介绍go语言的历史和特性,简单的入门. 来历 很久以前,有一个IT公司,这公司有个传统,允许员工拥有20%自由时间来开发实验性项目.在2007的某一天,公司的几个大牛, ...

  9. NSLineBreakMode 的区别

    typedef enum {     UILineBreakModeWordWrap = 0,     UILineBreakModeCharacterWrap,     UILineBreakMod ...

  10. C++11 bind

    #include <iostream> #include <functional> using namespace std; int func(int a, int b) { ...