vue之动态绑定v-model(封装公共的查询组件)

Vue表单元素绑定:v-model 指令 在 Web 应用中,通过表单可以实现输入文本、选择选项和提交数据等功能。在 Vue.js 中,通过v-model 指令可以对象表单元素进行双向数据绑定,在修改表单值的同时,Vue 实例中对应的属性值也会随之更新,反之亦然。使用v-model 指令,绑定表单元素:文本框、单选按钮、下拉框、复选框。 阅读详情

 人狠话不多,直接上代码,直接复制粘贴就可以使用

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>

	<body>
		<div id="app">
			<div v-for="(item,index) in message">
				{{item.label}}
				<input v-if="item.type == 'text' || item.type == 'number' || item.type == 'email' || item.type == 'phone'" type="text" :disabled="item.required" v-model="item.vModel[item.vModel1]"/>
				<textarea v-else-if="item.type == 'textarea'" :disabled="item.required" v-model="item.vModel[item.vModel1]"></textarea>
				<span v-else-if="item.type =='checkbox'">
					<span v-for="(ck,index) in item.data">
						{{ck}}<input type="checkbox" :disabled="item.required" v-model="item.vModel[item.vModel1]"/></label>
					</span>
				</span>
				<span v-else-if="item.type =='radio'">
					<span v-for="(rd,index) in item.data">
						{{rd}}<input type="radio" :disabled="item.required" v-model="item.vModel[item.vModel1]"/></label>
					</span>
				</span>
				<div style="margin-top: 20px;"></div>
			</div>
			
			<button @click="submit">提交</button>
		</div>
		<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.js">
		</script>
		<script>
			var vm = new Vue({
				el: '#app',
				//原数据
				/*data: {
					message: [{
						label: '姓名',
						type: 'text',
						required: false,
						vModel:'name'
					}, {
						label: '电话',
						type: 'phone',
						required: true,
						vModel:'phone'
					}, {
						label: '邮箱',
						type: 'email',
						required: false,
						vModel:'email'
					}, {
						label: '数字',
						type: 'number',
						required: true,
						vModel:'amount'
					}, {
						label: "爱好",
						type: 'checkbox',
						required: false,
						data: ["上网", "旅游", "篮球", "跑步"],
						vModel:'hobby'
					}, {
						label: '性别',
						type: 'radio',
						required: false,
						data: ["男", "女"],
						vModel:'sex'
					}, {
						label: '问题',
						type: 'textarea',
						required: true,
						vModel:'question'
					}]
				},*/
				//处理完成的数据
				//注意用原生的写爱好,性别这种v-model不能写一个
				data: {
					message: [{
						label: '姓名',
						type: 'text',
						required: false,
						vModel1:'name',
						vModel: {name:''}
					}, {
						label: '电话',
						type: 'phone',
						required: false,
						vModel1:'phone',
						vModel: {phone:''}
					}, {
						label: '邮箱',
						type: 'email',
						required: false,
						vModel1:'email',
						vModel: {email:''}
					}, {
						label: '数字',
						type: 'number',
						required: false,
						vModel1:'amount',
						vModel: {amount:''}
					},  {
						label: '问题',
						type: 'textarea',
						required: false,
						vModel1:'question',
						vModel: {question:''}
					}]
				},
				methods: {
					submit(){
						console.log(this.message)
						this.message.forEach((item,inedx)=>{
							alert(item.vModel[item.vModel1])
						})
					}
				}
			});
		</script>
	</body>

</html>

运行结果

 

 

前端必知必会-Vue v-model 指令 我们创建一个包含我们需要查找的所有项目的列表,并在下方创建一个包含已找到项目的列表,并删除已找到的项目。我们实际上可以将所有项目放在第一个列表中,将所有项目放在第二个列表中,然后只需使用 v-show 和 Vue 数据属性“found”来定义是否在第一个或第二个列表中显示该项目。v-model 提供了双向绑定,这意味着表单输入元素会更新 Vue 数据实例,而 Vue 实例数据的更改会更新输入。在复选框旁边,我们添加了一个文本,该文本始终反映当前的“重要”状态,在“真”或“假”之间动态变化。 阅读详情

相关推荐

快速入门Vue的v-model表单绑定:语法糖、动态值、修饰符的小技巧你都掌握了吗?

title: 快速入门Vue的v-model表单绑定:语法糖、动态值、修饰符的小技巧你都掌握了吗?v-model是Vue中简化表单输入的语法糖,自动同步输入值与组件状态。它根据输入类型适配DOM属性和事件:文本/多行文本用value和input,复选框/单选框用checked和change,选择器用value和change。v-model支持修饰符如.lazy(延迟同步)、.number(转为数字)、.trim(去除首尾空格)。动态值绑定可通过v-bind实现,如复选框的true-value和。

https://blog.cmdragon.cn/ 893

Vue动态添加v-model绑定及获取其返回数据

从数据库拿到的动态数据绑定到页面对应的v-model或者v-bind上,并且根据对页的操作获取到返回的值: 1、首先在data里定义一个数据 timeTip 为一个空数组 data () { return { timeTip:[] } } 2、将获取到的数据进行动态生成,并塞入 timeTip 中 crea...

weixin_30678349的博客 8988

前端犄角旮旯,非常规面试题总结(不断更新....)

27、判断类型的方式有哪些?1、typeof操作符:用来检测数据的类型,返回的是一个表示类型的字符串。2、instanceof操作符:用来检测对象是否为指定的构造函数的实例。3、方法:可以返回对象的准确类型。4、方法:用来判断一个变量是否为数组。(一)typeof和instanceof区别typeof返回的是一个字符串,表示变量的数据类型,可能的返回值有numberstringbooleanfunctionundefinedobject。instanceof返回的是一个布尔值,true或。

qq_51398495的博客 1666

vue 循环创建表单,绑定不同的v-model,实现动态表单绑定

最近遇到了一个需求,根据传入的参数,加载表单。例如:传入参数3,表单需要加载3个输入框;传入参数6,需要加载6个输入框;

qq_30488445的博客 3138

Cesium创建无人机视锥,同步视锥与鹰眼地图视角,实现视锥键盘控制。解决视锥初始化位置不准确问题等

本文描述了一个基于Cesium的3D视锥体可视化系统开发过程。系统实现了主视图与鹰眼视图的双屏联动,支持通过键盘控制视锥体的空间移动(WASD前后左右,Q/E旋转,C/Z升降),并实时同步更新两个视图。关键技术包括:1)基于主视图Scene创建Camera实现视锥体精确绘制;2)通过PerspectiveFrustum设置视锥参数;3)建立双视图的相机位置及视角同步机制。目前暂未实现视锥体far/near边界在鹰眼视图中的可视化,该系统可应用于无人机视角监控等三维场景交互需求。

coder_bin的博客 1593

什么是无人机巡检?如何实现无人机自动巡检?

复亚智能的无人机自动巡检系统通过高度自动化的技术,实现了无人机的高效巡检作业。无人机自动机场支持无人机的自动起降和电池更换,自动飞行算法确保无人机在复杂环境中的精准飞行和拍摄,而云端识别诊断和AI感知算法平台则实现图像的实时传输和智能分析。复亚智能,作为无人机技术的创新者和推动者,致力于开发先进的无人机自动巡检解决方案,助力各行各业实现智能化、自动化的巡检工作,引领智能巡检的未来。利用人工智能和机器学习算法,无人机可以被训练来识别特定的模式和异常,如结构损坏、热泄漏等,从而提高巡检的准确性和效率。

foiadrone的博客 2844

vue常问面试题

css~vue中的常见的面试题的更新

qq_43184101的博客 592

基于 VS Code + CMake + Make + GNU工具链 + OpenOCD 的通用MCU开发环境搭建教程

以CH32V307(RISCV)和STM32F103(Cortex-M3)为例的Vscode+gnu单片机环境搭建。

余十三_的博客 2177

VUE2常见面试题

本文摘要: Vue相关技术核心概念解析 MVVM与MVC架构区别 MVC单向数据流,视图与控制器耦合 MVVM双向绑定,数据自动同步,解耦视图与模型 Vue核心特性 生命周期钩子函数执行顺序(8个阶段) 数据双向绑定原理(Object.defineProperty+发布订阅) 组件通信机制(父子props/emit、跨级provide/inject等) 虚拟DOM与diff算法优化渲染 计算属性与侦听器区别(缓存机制) 状态管理 Vuex工作流程(state/mutations/actions/getter

2301_76805327的博客 467

机械臂 关节电机选型计算

电机 机械臂

hisen92的专栏 8983

UDS诊断入门第一课:手把手教你玩转0x10会话控制服务(附ISO14229实战解析)

刚接触汽车电子诊断的工程师们,往往会被厚厚的ISO 14229标准文档和各种专业术语吓退。但就像学习编程要从"Hello World"开始一样,掌握UDS协议的最佳切入点就是0x10诊断会话控制服务。这个看似简单的服务,实际上是整个诊断系统的"钥匙"——它决定了ECU(电子控制单元)当前处于何种工作模式,直接影响着其他诊断服务的可用性。 在实际车辆诊断中,ECU默认处于DefaultSession模式,这种模式下许多高级诊断功能是被禁用的。想象一下你正在开发一个需要刷写ECU固件的工具,如果连最基本的会

weixin_30402343的博客 394

Vue 完整版系统知识文档

《Vue全栈开发实战手册》摘要 本手册系统整合Vue2/Vue3全栈知识体系,涵盖基础语法、组件开发、状态管理、工程化等核心内容,适合从入门到精通的完整学习路径。主要特点: 基础核心 详解MVVM架构和响应式原理(Vue2的Object.defineProperty vs Vue3的Proxy) 完整模板语法规则与16种内置指令解析 组件系统核心:通信机制(8种方案)、插槽、动态组件、递归组件 进阶实战 状态管理:Vuex/Pinia完整解决方案 路由开发:动态路由、权限控制、懒加载 工程化:Webpack

专注 Java 后端开发,分享基础语法、JVM、并发、Spring 全家桶、微服务、分布式、性能优化等实战干货。坚持输出高质量技术笔记,用简单语言讲清复杂原理,助力每一位 Java 开发者稳步进阶。 402

Win10下Altera USB-Blaster驱动安装详解:禁用数字签名与排查指南

在嵌入式开发和FPGA调试过程中,驱动安装是工程师绕不开的环节,尤其是当操作系统对驱动签名有严格限制时,硬件往往无法被正常识别。数字签名是系统验证驱动程序来源和完整性的重要机制,Win10出于安全考虑,默认拒绝加载未经签名的驱动,这正是Altera USB-Blaster下载器在设备管理器中显示未知设备或黄色感叹号的根本原因。通过理解设备管理器的排查逻辑,掌握临时禁用驱动强制签名或开启测试模式的方法,配合正确的驱动文件路径选择与手动安装操作,即可解决Quartus无法检测到下载器的问题。这一流程同样适用于许

weixin_29164497的博客 247

工作中使用到的单词(软件开发)

1.エイリアス   alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート   promote 促进,提升   开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................

sun0322 6万+

ROCm rocr-libhsakmt分析系列1-2:多GPU跨卡VRAM访问机制分析

本文基于ROCr-Runtime的libhsakmt库源码,深入分析了多GPU系统中跨设备内存访问的实现机制。主要内容包括: 实现流程概述:通过P2P拓扑发现、统一虚拟地址空间、页表映射和硬件转发四个步骤,实现零拷贝的跨GPU内存访问。

图形/计算GPU的驱动与虚拟化技术分享园地 2509

【华为OD机试真题 新系统】1043、魔法咒语组合 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

【华为OD机试真题 新系统】1043、魔法咒语组合 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2026e卷,od机试,2026E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2026华为od,如何备战华为od

KJ.JK 285

动态绑定v-model,并解决输入框无法输入和无法双向绑定问题

动态给输入框绑定v-model,并解决输入框无法输入信息和双向绑定问题

逆水行舟 不进则退 4445

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

elementUI表单v-model绑定及校验(动态表单校验)技巧

elementUiform表单绑定及校验

Study123wf的博客 5673

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

v-model动态选取绑定的属性

需求: 根据前一个表单项用户选取的值,动态选择后面的表单项应该绑定哪个属性。比如前者选了1,那么后者绑定formObj.stu,选2,后者绑定formObj.tea 坑 那么针对这个场景我们第一个想法肯定是三目,你肯定会写出如下的代码 <el-input :v-model:'formObj.xx == 1?this.formObj.stu':'this.formObj.tea'> </el-input> 恭喜你,这么些不生效。因为vue有自己的规则针对v-model是不允许使用表达

商朝 2516

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Vue3小案例—v-model 双向数据绑定实现动态列表增加和删除

当一个表单元素(如input、textarea)的值发生变化时,它会触发一个change事件或input事件,Vue.js 会监听这些事件并更新数据。同时,当Vue实例的数据发生变化时,也会触发一个更新视图的事件,从而实现数据与视图的。,它可以将表单元素的值与Vue实例的数据绑定在一起,当表单元素的值发生改变时,Vue实例的数据也会随之更新,反之亦然。v-model 只能用于表单元素,如input、textarea、select 等,而不能用于自定义组件。v-model 的原理实际上就是通过。

qq_55930097的博客 1488

VUE动态绑定v-model变量(ui框架iview)

需求 最近在学习vue技术,开发表格的时候,想把表格做成组件,那查询条件就需要动态生成,这就遇到一个问题,vue怎么动态给v-model变量值。 UI框架使用的是iview 页面渲染(子组件) <div class="ivu-card-body"> <Form ref="formInline" v-model="formInline" inline> <Row type="flex" justify="end" align="middle"

qq_39809160的博客 7946

【vue3+elementplus】动态设置二次封装的el-form组件中的v-model绑定的变量名

动态设置二次封装的el-form组件中的v-model绑定的变量名

bbt953的博客 3422

Vue基础--Vue中的双向绑定v-model指令

v-model使用详解

qq_44749491的博客 5482

Vue动态设置v-model

需求:从后端获取到列表数据如下,想动态渲染el-input输入框,以propertyNameZh的值为标签名,propertyNameEn的值为v-model绑定对象。 goodsProperty:[ { 'propertyNameZh':'商品售价', 'propertyType':'text', 'propertyNameEn':'goodsPrice', 'propertyUnit':'元', }, {

chenguixu的博客 6686

在 vue 中动态绑定 v-model

在 vue 中动态绑定 v-model 一、经典数据双向绑定 如下动图: 二、当v-for循环中需要动态绑定v-model 以图示例: 注意:  避免在运行时向Vue实例或其根 $data 添加反应性属性在data选项中预先声明它。  注意v-model是vue中的一个指令,而不是标签属性,不要用v-bind:去动态绑定它【“ v-bind: ”缩写为“ : ”】 ...

杜鲁阳的博客 8589

动态v-model

引题: vue如何绑定动态的v-model 每日励志话语: 每天进一步一点点,这不就是希望。 如果错误还望指出,大家一起加油,明天你就是最耀眼的一个。 如果内容对你有帮助还望可以帮我点个三连 如题 笔者在工作上遇到这样一个场景在一些的表单中如果出现很多字段,那么使用循环的方式去处理会比较简洁,那么在这一过程中就出现了一个问题如何动态绑定表单的值,这里以Element UI的form表单为例 假设目前需要: 10个输入框的表单 如果一个去写代码后续改起来可能相当麻烦 <el-form

lin1072368472的博客 3657
上一篇: Echars基本使用-动态渲染数据
下一篇: java http协议 post请求访问地址
Java_小小白
博客等级 码龄9年 10粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值