微信小程序 --- 表单输入验证(手机号、邮箱验证、输入非空)
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" ...
随机推荐
- JavaScript之Ajax(一)创建Ajax对象
// 支持浏览器的源码 function AjaxObject() { var AjaxRequest; // 缓存XHR对象便于 Ajax 使用 try { // Opera 8.0+, Firef ...
- 如何在同一台服务器上部署两个tomcat
因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...
- mysql gtid 第一篇
GTID1 简介 就是全局事务ID(global transaction identifier )2 构成 uuid+transaction_id 3 格式 7a07cd08-ac1b-11 ...
- try 、catch 、finally 、throw 测试js错误
try语句允许我们定义在执行时进行错误测试的代码块. catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块. finally 语句在 try 和 catch 之后无论有无异常都会执 ...
- plist反序列化
// // ViewController.m // 03-plist文件的一个反序列化 // // Created by jerry on 15/9/28. // Copyright (c) ...
- .NET中制做对象的副本(二)继承对象之间的数据拷贝
定义学生 /// <summary> /// 学生信息 /// </summary> public class Student { /// <summary> // ...
- python f-string
文章目录 1. 主要内容 1.1. 旧时代的格式化字符串 1.1.1. Option #1: %-formatting 1.1.2. 怎样使用 %-formatting 1.1.3. 为什么 %-fo ...
- 【转】Python之日期与时间处理模块(date和datetime)
[转]Python之日期与时间处理模块(date和datetime) 本节内容 前言 相关术语的解释 时间的表现形式 time模块 datetime模块 时间格式码 总结 前言 在开发工作中,我们经常 ...
- UML和模式应用5:细化阶段(7)---从需求到设计迭代进化
1.前言 迭代开发中,每次迭代都会发生从以需求或分析为主要焦点到以设计和实现为主要焦点的转变 分析和面向对象的分析重点关注学习做正确的事,理解案例重要目标,规则和约束 设计工作强调正确的做事,熟练设计 ...
- linux 高级字符设备驱动 ioctl操作介绍 例程分析实现【转】
转自:http://my.oschina.net/u/274829/blog/285014 1,ioctl介绍 ioctl控制设备读写数据以及关闭等. 用户空间函数原型:int ioctl(int f ...