微信小程序 --- 表单输入验证(手机号、邮箱验证、输入非空)
js代码
Page({
/**
* 页面的初始数据
*/
data: {
indicatorDots: false,
autoplay: false,
interval: 5000,
duration: 1000,
proList: null,
name:"",
phone:"",
email:"",
company:"",
job:"",
vip:""
},
// 判定输入为非空字符
formSubmit: function (e) {
var name = e.detail.value.name;
var phone = e.detail.value.phone;
// mobile
var email = e.detail.value.email;
var company = e.detail.value.mobile;
var job = e.detail.value.job;
var vip = e.detail.value.vip;
if (name==""||phone==""||email==""||company==""||job==""||vip==""){
wx.showModal({
title: '提示',
content: '请输入完整信息!',
success: function (res) {
if (res.confirm) {
console.log('用户点击确定')
}
}
})
} else{
console.log(e.detail.value)
// detail
}
},
loginBtnClick: function () {
if (this.data.name.length == 0 || this.data.phone.length == 0) {
this.setData({
infoMess: '温馨提示:用户名和密码不能为空!',
})
} else {
this.setData({
infoMess: '',
name: '用户名:' + this.data.userN,
phone: '密码:' + this.data.passW
})
}
},
// 手机号部分
inputPhoneNum: function (e) {
let phoneNumber = e.detail.value
if (phoneNumber.length === 11) {
let checkedNum = this.checkPhoneNum(phoneNumber)
}
},
checkPhoneNum: function (phoneNumber) {
let str = /^1\d{10}$/
if (str.test(phoneNumber)) {
return true
} else {
wx.showToast({
title: '手机号不正确',
image: './../../../../images/fail.png'
})
return false
}
},
// 邮箱验证部分
inputemail: function (e) {
let email = e.detail.value
let checkedNum = this.checkEmail(email)
},
checkEmail: function (email) {
let str = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/
if (str.test(email)) {
return true
} else {
wx.showToast({
title: '请填写正确的邮箱号',
image: './../../../../images/fail.png'
})
return false
}
}
})
wxml代码:
<form bindsubmit='formSubmit'>
<view class='form'>
<text class='label'>姓名<text class='red'>(必填)</text></text>
<input class='int' name="name"></input>
<text class='label'>手机<text class='red'>(必填)</text></text>
<input class='int'name="phone" type="number" maxlength="11" bindinput="inputPhoneNum"></input>
<text class='label'>邮箱<text class='red'>(必填)</text></text>
<input class='int' name="email" bindchange="inputemail" ></input>
<text class='label' >单位<text class='red'>(必填)</text></text>
<input class='int' name="company" ></input>
<text class='label' >职务<text class='red'>(必填)</text></text>
<input class='int' name="job"></input>
</view>
<button class='submit' formType="submit" type="primary" >提交</button>
</form>
注解:
手机号为输入11个数字触发事件。
邮箱为失去焦点触发事件。
正则表达式/ /,格式注意。
---------------------
作者:Thea12138
来源:CSDN
原文:https://blog.csdn.net/Thea12138/article/details/80507133
版权声明:本文为博主原创文章,转载请附上博文链接!
微信小程序 --- 表单输入验证(手机号、邮箱验证、输入非空)的更多相关文章
- 微信小程序——表单验证插件WxValidate的二次封装(终极版)
微信小程序表单验证前面的两篇文章做的效果总感觉都有点不太友好,第一篇里的效果是将错误信息通过对话框形式弹出来,这种形式在web形式下早已经淘汰了:第二篇是一次性全部显示所有的错误,然后3秒后自动消失, ...
- 微信小程序——表单验证插件WxValidate的二次封装(二)
在上一篇博客<微信小程序——仿jqueryValidate表单验证插件WxValidate的二次封装>中,我将WxValidate做了再次封装,简化了初始规则数据的构造,但是当有错误时页面 ...
- 微信小程序 - 表单验证插件WxValidate使用
插件下载地址及官方文档:https://github.com/skyvow/wx-extend 具体的WxValidate.js文件的位置在wx-extend/src/assets/plugins/w ...
- 微信小程序 - 表单验证插件WxValidate(自定义警告信息形式)
弹出的形式对于用户来说,总是不太友好的 可能会出现层级问题(只需要设置一下提示的层级即可) WxValidate内置规则 以下代码拷贝即可使用~ wxml <form bindsubmit='s ...
- 微信小程序-表单组件
button 按钮 注:button-hover 默认为{background-color: rgba(0, 0, 0, 0.1); opacity: 0.7;} 示例代码: /** wxss **/ ...
- 微信小程序-表单
wxml <view> 按钮: <button size="{{buttom.size}}" type="{{buttom.type}}" p ...
- 微信小程序-表单笔记
发布页——向云端数据库上传多行文字和4张图片 第6,8行注释掉和不注释掉都可以实现数据上传 var _this = this; wx.cloud.callFunction({ name: 'searc ...
- 微信小程序-表单笔记2
本地添加4张图片并显示至页面——组件位置.设置样式.列表渲染 Q.button是一张图片,需要实现点击这张图片后选择本地图片后显示至页面,不知道怎么让本地图片将button挤到右边 S.在wxml中 ...
- 小程序 表单 获取 formId
微信小程序使用模板消息需要使用支付prepay_id或表单提交formId, 要获得 formId 需要在 form 标签中声明属性 report-submit="true" ...
随机推荐
- linux下mysql 5.7.22 安装
二进制安装 1.下载https://dev.mysql.com/downloads/mysql/5.6.html#downloads 2.官方文档https://dev.mysql.com/doc/r ...
- ubuntu14.04 安装 CUDA 7.5 / CUDA 8.0
原文转自:http://blog.csdn.net/masa_fish/article/details/51882183 CUDA7.5和CUDA8.0的安装过程是一毛一样的.所以如果安装CUDA8. ...
- 使用ado.net打造通用的数据库操作类
最近在项目中使用中碰到了这样一种情况,查询的数据是从Oracle中获取的,但是记录下来的数据是存在Sql Server中(企业Oracle数据库管理太严,没办法操作).而且我在之前的工作中也碰到过使用 ...
- pom.xml的第一行报错
第一行:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or ...
- docker 定时清理none镜像
=============================================== 2019/3/31_第1次修改 ccb_warlock == ...
- VirtualBox上的Ubuntu附加功能
主机:Windows 10家庭中文版,VirtualBox 版本 5.2.22 r126460 (Qt5.6.2),Ubuntu 18.04, 在主机上安装了VirtualBox,然后在Virtual ...
- Day6------------复习
文件归档:tar cvf test.tar 文件压缩:gzip 目标文件 bzip2 test,tar 文件解压:gunzip test.tar.gz bzip2 test.tar.bz2 文件打包压 ...
- EntityFramework codefirst Enable-Migrations No context type was found in the assembly “MyApp.Web” error
Enable-Migrations -Force -ContextTypeName "MyApp.Repository.DataContext" -ProjectName &quo ...
- PYTHON-函数的定义与调用,返回值,和参数
函数基础'''1. 什么是函数 具备某一功能的工具->函数 事先准备工具的过程--->函数的定义 遇到应用场景,拿来就用---->函数的调用 函数分类两大类: 1. 内置函数 2. ...
- Redis的Multi的内幕真相
今天遇到个Redis奇慢的问题,断点分析发现跟multi有关. 由于本人太忙不想去阅读Redis Server的源代码(其实是懒),就通过TCPDump来分析吧. 步骤: 1. 先在Redis Ser ...