uniapp 表单使用Uview校验 包括城市选择器

<view><!-- 注意,如果需要兼容微信小程序,最好通过setRules方法设置rules规则 --><u--form labelPosition="left" :model="model1" :rules="rules" ref="uForm" labelWidth="174"><u-form-item label="身份选择" prop="userInfo.sex" borderBottom @click="showSex = true; " ref="item1"><u--input v-model="model1.userInfo.sex" disabled disabledColor="#ffffff" placeholder="请选择身份"border="none"></u--input><u-icon slot="right" name="arrow-right"></u-icon></u-form-item><u-form-item label="真实姓名" prop="userInfo.name" borderBottom ref="item1"><u--input v-model="model1.userInfo.name" border="none" placeholder="请输入您的姓名"></u--input></u-form-item><u-form-item label="所在城市" prop="userInfo.city" borderBottom @click="show1 = true; " ref="item1"><u--input v-model="model1.userInfo.city" disabled disabledColor="#ffffff" placeholder="请选择所在城市"border="none"></u--input><u-icon slot="right" name="arrow-right"></u-icon></u-form-item><u-form-item label="执业机构" prop="userInfo.jigou" borderBottom ref="item1"><u--input v-model="model1.userInfo.jigou" border="none" placeholder="请输入您的所在机构"></u--input></u-form-item></u--form><u-action-sheet :show="showSex" :actions="actions" @close="showSex = false"@select="sexSelect"></u-action-sheet><view class=""><u-picker :show="show1" ref="uPicker" :columns="cityList" @confirm="cityConfirm" @cancel="cancel()" itemHeight="70"@change="changeHandler"></u-picker></view></view>
<script>import cityData from '@/utils/city.js'export default {data() {return {showSex: false,model1: {userInfo: {name: '',sex: '',city: '',jigou:''},},actions: [{name: '医生',},{name: '员工',},],cityList: [],cityLevel1: [],cityLevel2: [],cityLevel3: [],areaname:'',show1: false,rules: {'userInfo.name': {type: 'string',required: true,message: '请填写姓名',trigger: ['blur', 'change']},'userInfo.sex': {type: 'string',max: 2,required: true,message: '请选择身份',trigger: ['blur', 'change']},'userInfo.jigou': {type: 'string',required: true,message: '请填写机构',trigger: ['blur', 'change']},},radio: '',switchVal: false};},onReady() {//如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过setRules方法设置规则。this.$refs.uForm.setRules(this.rules)},onLoad() {// 城市选择器初始化this.initCityData();},methods: {sexSelect(e) {console.log(e)this.model1.userInfo.sex = e.namethis.$refs.uForm.validateField('userInfo.sex')},citySelect(e) {console.log(e)this.model1.userInfo.city = e.namethis.$refs.uForm.validateField('userInfo.city')},// 城市选择器initCityData() {// 遍历城市jscityData.forEach((item1, index1) => {let temp2 = [];this.cityLevel1.push(item1.provinceName);let temp4 = [];let temp3 = [];// 遍历市item1.cities.forEach((item2, index2) => {temp2.push(item2.cityName);// 遍历区item2.counties.forEach((item3, index3) => {temp3.push(item3.countyName);})temp4[index2] = temp3;temp3 = [];})this.cityLevel3[index1] = temp4;this.cityLevel2[index1] = temp2;})// 选择器默认城市this.cityList.push(this.cityLevel1, this.cityLevel2[0], this.cityLevel3[0][0]);console.log(this.cityList)}, // 选中时执行changeHandler(e) {const {columnIndex,index,indexs,value,values,// 微信小程序无法将picker实例传出来,只能通过ref操作picker = this.$refs.uPicker} = e;if (columnIndex === 0) { // 选择第一列数据时// 设置第二列关联数据picker.setColumnValues(1, this.cityLevel2[index]);// 设置第三列关联数据picker.setColumnValues(2, this.cityLevel3[index][columnIndex]);} else if (columnIndex === 1) { // 选择第二列数据时// 设置第三列关联数据picker.setColumnValues(2, this.cityLevel3[indexs[0]][index]);}},// 单击确认按钮时执行cityConfirm(e) {// 输出数组 [省, 市, 区]console.log(e.value);this.areaname = e.valuethis.cityName = e.value.join("-");// 隐藏城市选择器console.log(this.cityName);this.show1 = false;this.model1.userInfo.city = this.cityName},cancel() {this.show1 = false},},}
</script>
	/deep/ .u-popup__content {width: 100%;height: 800rpx;}/deep/.u-icon__icon {color: #1FCFC9 !important;font-size: 32rpx !important;}/deep/ .u-action-sheet__item-wrap button {background: #fff !important;}/deep/ .u-action-sheet__item-wrap button::after {border: none;}/deep/.u-form {display: flex;flex-direction: column;align-items: center;width: 690rpx;margin: auto;margin-top: 48rpx;.u-form-item {width: 100%;}}/deep/ .u-form-item__body {width: 100%;height: 120rpx !important;display: flex;align-items: center;justify-content: space-between;}/deep/ .u-input__content__field-wrapper__field {color: #333 !important;font-family: YouSheShaYuFeiTeJianKangTi !important;font-size: 28rpx !important;}/deep/ .u-form-item__body__left__content__label {color: #333 !important;font-family: YouSheShaYuFeiTeJianKangTi !important;font-size: 28rpx !important;}

city.js资源已上传

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/802935.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python中csr_matrix的两种初始化方法

本文以csr_matrix为例来说明sparse矩阵的使用方法&#xff0c;其他类型的sparse矩阵可以参考https://docs.scipy.org/doc/scipy/reference/sparse.html csr_matrix是Compressed Sparse Row matrix的缩写组合&#xff0c;下面介绍其两种初始化方法 csr_matrix((data, (row_ind…

【操作系统】-寄存器-具有记忆功能的元器件

为什么要使用寄存器 现代电子计算机用二进制来表示数字&#xff0c;人类发明了触发器&#xff0c;每个触发器可以保存1比特&#xff0c;为了保存一个较大的二进制数&#xff0c;组合一起就是新的元器件&#xff0c;称为寄存器&#xff08;register&#xff09;&#xff0c;或者…

MySQL-7.mysql约束

约束用于确保数据库中的数据满足特定的商业规则。 MySQL约束包含五种&#xff1a;not null、unique、primary key、foreign key、check 7.1 primary key 主键 字段名 字段类型 primary key 用于唯一的标识表的行数据&#xff0c;当定义主键约束后&#xff0c;该列不能重复。 pr…

第十课 Excel

最上方标题栏&#xff1a; 显示共工作薄名称&#xff0c;如果显示兼容模式是没有办法使用高级功能的。分辨高版本和低版本可以通过后缀名进行分辨&#xff1b;显示xlsx就是高版本工作薄&#xff0c;如果显示xls的话就是低版本工作薄了。如果同事老板都使用的是低版本的话我们发…

VM-UNet: Vision Mamba UNet for Medical Image Segmentation

VM-UNet: Vision Mamba UNet for Medical Image Segmentation VM-UNet&#xff1a;基于视觉Mamba UNet架构的医学图像分割 论文链接&#xff1a;http://arxiv.org/abs/2402.02491 代码链接&#xff1a;https://github.com/JCruan519/VM-UNet 1、摘要 文中利用状态空间模型SS…

【攻防世界】Confusion1

php的标志是大象&#xff0c;Python的标志是蛇 。Python 的 Flask 框架( Flask 使用 Jinja2 作为模板引擎 ) 点进register.php 输入{{3*4}} 输入 {{config}} 也有回显&#xff0c;ssti 判断是否存在ssti注入&#xff1a; 1. {{8*8}} 2. {{config}} 过滤了关键字&#xff0…

人工智能前沿成科技竞争新高地

以下文章来源&#xff1a;经济参考报 近日&#xff0c;首届中国具身智能大会&#xff08;CEAI 2024&#xff09;在上海举行。作为人工智能领域的前沿热点&#xff0c;具身智能正逐步走进现实&#xff0c;成为当前全球科技竞争的新高地、未来产业的新赛道、经济发展的新引擎。 “…

vue3中项目优化(Web Worker的使用)

1.Web Worker的作用 本人的理解&#xff1a;js是单线程执行代码&#xff0c;也就是代码需要从上往下执行&#xff0c;而使用Web Worker后相当于分了一条线程出来执行代码&#xff0c;那么两条线程肯定是比一条线程执行的快。 2.新建Web Worker文件 在public文件夹下新建work…

Linux:gcc

Linux&#xff1a;gcc gcc概述语言发展史gcc的编译过程预处理编译汇编 gcc的链接过程动态库与静态库 gcc概述 GCC&#xff08;英文全拼&#xff1a;GNU Compiler Collection&#xff09;是 GNU 工具链的主要组成部分&#xff0c;是一套以 GPL 和 LGPL 许可证发布的程序语言编译…

SpringBoot整合RabbitMQ-应答模式

一、应答模式 RabbitMQ 中的消息应答模式主要包括两种&#xff1a;自动应答&#xff08;Automatic Acknowledgement&#xff09;和手动应答&#xff08;Manual Acknowledgement&#xff09;。&#xff08;一般交换机发送消息&#xff0c;RabbitMQ只有在接收到消费者的确认后才…

LeetCode-139. 单词拆分【字典树 记忆化搜索 数组 哈希表 字符串 动态规划】

LeetCode-139. 单词拆分【字典树 记忆化搜索 数组 哈希表 字符串 动态规划】 题目描述&#xff1a;解题思路一&#xff1a;Python动态规划五部曲&#xff1a;定推初遍举【先遍历背包 后遍历物品】必须是排列解题思路二&#xff1a;Python动态规划版本二解题思路三&#xff1a;回…

C++——优先级队列

前言&#xff1a;这篇文章我们继续来分享一个c的容器——优先级队列。 一.理解优先级 何为优先级一说&#xff1f;实际上就是有顺序的意思。 优先级队列&#xff0c;即有顺序的队列&#xff0c;是一个无需我们自己进行排序操作&#xff0c;在数据传入时就会由容器自己排好序的…

冒泡排序解读

在信息爆炸的时代&#xff0c;数据无处不在&#xff0c;而如何有效地管理和处理这些数据&#xff0c;成为了现代计算机科学的一个重要课题。排序算法&#xff0c;作为数据处理的基本工具之一&#xff0c;对于数据的组织、搜索和分析起着至关重要的作用。今天&#xff0c;我们就…

在家学机器人技术指南

机器人技术是一个跨学科的领域&#xff0c;涉及计算机科学、电子工程、机械工程、人工智能等多个方面。在家自学机器人技术是完全可能的&#xff0c;但需要有计划和系统的学习路径&#xff0c;以及对相关领域的基础知识有一定的了解。 以下是一些建议&#xff0c;可以帮助你在家…

[C++][算法基础]合并集合(并查集)

一共有 n 个数&#xff0c;编号是 1∼n&#xff0c;最开始每个数各自在一个集合中。 现在要进行 m 个操作&#xff0c;操作共有两种&#xff1a; M a b&#xff0c;将编号为 a 和 b 的两个数所在的集合合并&#xff0c;如果两个数已经在同一个集合中&#xff0c;则忽略这个操…

力扣刷题Days33-209. 长度最小的子数组(js)

目录 1&#xff0c;题目-滑动窗口 2&#xff0c;代码 滑动窗口 3&#xff0c;学习与总结 1&#xff0c;题目-滑动窗口 给定一个含有 n 个正整数的数组和一个正整数 target 。找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1,…

动态路由-基于vue-admin-template

基于 vue-admin-template的动态路由 1. 拆分静态路由与动态路由 静态路由----所有人都可以访问—首页/登录/404 动态路由–有权限的人才可以访问—组织/角色/员工/权限 2. 根据用户权限添加动态路由 获取对应的权限标识(vuex中actions中把用户资料通过return 进行返回&…

代码算法训练营day14 | 理论基础、递归遍历

day14&#xff1a; 理论基础二叉树的分类&#xff1a;二叉树的种类&#xff1a;满二叉树完全二叉树二叉搜索树平衡二叉搜索树 二叉树的存储方式&#xff1a;链式存储顺序存储 二叉树的遍历方式&#xff1a;深度优先和广度优先遍历实现方式 二叉树的定义&#xff1a; 递归遍历递…

(学习日记)2024.04.11:UCOSIII第三十九节:软件定时器

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

Vue文档

Vue是什么&#xff1f;为什么要学习他 Vue是什么&#xff1f; Vue是前端优秀框架&#xff0c; 是一套用于构建用户界面的渐进式框架 为什么要学习Vue Vue是目前前端最火的框架之一Vue是目前企业技术栈中要求的知识点Vue可以提升开发体验Vue学习难度较低… Vue开发前的准备 安…