大家可以用 v-model 指令在表单控件元素上创建双向数据绑定。这篇文章主要介绍了vue表单详解,需要的朋友可以参考下
一、基本用法
你可以用 v-model 指令在表单 d5fd7aea971a85678ba271703566ebfd 及 4750256ae76b6b9d804861d8f69e79d3 元素上创建双向数据绑定。
但 v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。
v-model 会忽略所有表单元素的 value、checked、selected 特性的初始值而总是将 Vue 实例的数据作为数据来源。你应该通过 JavaScript 在组件的 data 选项中声明初始值。
一组代码,看完text、textarea、radio、checkbox、select的基本用法:
<p id="app7"> <input type="text" v-model="message"><label>{{message}}</label></br> <textarea v-model="message1"></textarea><label>{{message1}}</label></br> <!--单选按钮在单独使用时,不需要v-model,直接使用v-bind 绑定一个布尔类型的值,为真时选中,为否时不选--> <input type="radio" :checked="picked"><label>单选按钮</label></br> <!--如果是组合使用来实现互斥选择的效果,就需要v-model 配合value来使用:--> <input type="radio" v-model="sex" value="boy"><label>男</label> <input type="radio" v-model="sex" value="girl"><label>女</label></br> <!--复选框使用数组类型的数据匹配--> <input type="checkbox" v-model="hobby" value="跑步"><label>跑步</label> <input type="checkbox" v-model="hobby" value="爬山"><label>爬山</label> <input type="checkbox" v-model="hobby" value="滑雪"><label>滑雪</label></br> <!--单选时的选择框,多选时加multiple属性就可以了--> <!--但我们一般都不用原生的这种下拉框,不美观,扩展功能也不好,一般会用插件或自己封装一个--> <select v-model="select"> <option disabled value="">请选择</option> <option>html</option> <option value="js">javascript</option> <option>css</option> </select> <!--用 v-for 渲染的动态选项--> <select v-model="selected"> <option v-for="option in options" :value="option.value"> {{option.text}} </option> </select> </p> var app7 = new Vue({ el: '#app7', data:{ message: '单行文本', message1: '多行文本', picked: true, sex: 'boy', hobby: ['爬山','滑雪'], select: 'css', selected: 'A', options: [ { text: 'One', value: 'A' }, { text: 'Two', value: 'B' }, { text: 'Three', value: 'C' } ] } });
二、值绑定
单选按钮、复选框和选择列表在单独使用或单选的模式下, v-model 绑定的值是一个静态字符串或布尔值, 但在业务中,有时需要绑定一个动态的数据, 这时可以用v-bind 来实现。
一组代码,看完表单常用radio、checkbox、select的值绑定:
<p id="app8"> <!--单选按钮,利用value动态绑定,在选中时,app.picked === app.value, 值都是boy--> <input type="radio" v-model="picked" :value="value"> <label>单选按钮</label> <p>{{picked}}</p> <p>{{value}}</p> <!--复选框,利用true-value与false-value动态绑定,勾选时,app.toggle == app.value1; 未勾选时,app.toggle == app.value2--> <input type="checkbox" v-model="toggle" :true-value="value1" :false-value="value2"> <label>复选框</label> <p>{{toggle}}</p> <p>{{value1}}</p> <p>{{value2}}</p> <!--选择列表,当选中时,app.selected 是一个Object ,所以app.selected.number == 123--> <select v-model="selected"> <option :value="{number:123}">123</option> </select> {{selected.number}} </p> var app8 = new Vue({ el: '#app8', data:{ picked: false, value: 'boy', toggle: false, value1: 'a', value2: 'b', selected: '' } });
三、修饰符
与事件的修饰符类似, v-model 也有修饰符,用于控制数据同步的时机。
一组代码,看完常用修饰符lazy、number、trim
<p id="app9"> <!-- .lazy: 在输入框中, v-model 默认是在input 事件中同步输入框的数据(除了提示中介绍的中文输入法情况外), 使用修饰符.lazy 会转变为在change 事件中同步,这时,message 并不是实时改变的,而是在失焦或按回车时才更新。--> <input type="text" v-model.lazy="message"> <p>{{message}}</p> <!--.number: 使用修饰符.number 可以将输入转换为Number 类型,否则虽然你输入的是数字,但它的类型其实是String ,比如在数字输入框时会比较有用--> <input type="text" v-model.number="number"> <p>{{typeof number}}</p> <!-- .trim: 修饰符.trim 可以自动过滤输入的首尾空格--> <input type="text" v-model="text"> <p>{{text}}</p> </p> var app9 = new Vue({ el: '#app9', data:{ message: '', number: '', text: '' } });
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
以上是详解vue表单的详细内容。更多信息请关注PHP中文网其他相关文章!

如何实现PHP表单提交后的页面跳转【简介】在Web开发中,表单的提交是一项常见的功能需求。当用户填写完表单并点击提交按钮后,通常需要将表单数据发送至服务器进行处理,并在处理完后将用户重定向至另一个页面。本文将介绍如何使用PHP来实现表单提交后的页面跳转。【步骤一:HTML表单】首先,我们需要在HTML页面中编写一个包含表单的页面,以便用户填写需要提交的数据。

如何处理PHP表单中的用户权限管理随着Web应用程序的不断发展,用户权限管理是一个重要的功能之一。用户权限管理可以控制用户在应用程序中的操作权限,保证数据的安全性和合法性。在PHP表单中,用户权限管理可以通过一些简单的代码来实现。本文将介绍如何处理PHP表单中的用户权限管理,并给出相应的代码示例。一、用户角色的定义和管理首先,对用户角色进行定义和管理是用户权

PHP表单处理:表单数据查询与筛选引言在Web开发中,表单是一种重要的交互方式,用户可以通过表单向服务器提交数据并进行进一步的处理。本文将介绍如何使用PHP处理表单数据的查询与筛选功能。表单的设计与提交首先,我们需要设计一个包含查询与筛选功能的表单。常见的表单元素包括输入框、下拉列表、单选框、复选框等,根据具体需求进行设计。用户在提交表单时,会将数据以POS

Java实现表单的实时验证与提示功能随着网络应用的普及和发展,表单的使用也变得越来越重要。表单是网页中用于收集和提交用户数据的元素,例如注册或登录页面的表单。在用户填写表单时,经常需要对其输入的数据进行验证和提示,以保证数据的正确性和完整性。在本文中,我们将介绍如何使用Java语言实现表单的实时验证与提示功能。HTML表单的搭建首先,我们需要使用HTML语言

如何使用PHP处理表单中的数据搜索和过滤概要:当用户通过表单提交数据时,我们需要对这些数据进行搜索和过滤,以便得到所需的结果。在PHP中,我们可以使用一些技术来实现这些功能。本篇文章将介绍如何使用PHP处理表单中的数据搜索和过滤,并提供相应的代码示例。简介:表单通常用于收集用户的输入数据,这些数据可以是文本、数字、日期等等。一旦用户提交表单,我们就需要对这些

Nette框架是一款用于PHPWeb开发的轻量级框架,以其简单易用、高效稳定的特点受到了广泛的欢迎和使用。在开发Web应用时,使用表单和验证是不可避免的需求。本文将介绍如何在Nette框架中使用表单和验证。一、表单构建在Nette框架中,表单可以通过Form类来创建。Form类在NetteForms命名空间中,可以通过use关键字引入。useNetteF

如何处理PHP表单中的下拉列表选项下拉列表是Web表单中常用的元素,它允许用户从预先定义的选项中选择一个或多个值。在PHP中,我们可以通过一些简单的代码实现下拉列表的处理。本文将向你展示如何使用PHP来处理表单中的下拉列表选项。HTML代码中的下拉列表通常使用<select>和<option>标签来定义。<select>标

ThinkPHP6表单重复提交处理:防止重复操作在Web应用程序开发中,表单提交是一项常见的操作。但是,有时用户会因为网络延迟或者误操作造成表单的重复提交,这样会给系统带来一些问题。为了解决这个问题,我们可以在ThinkPHP6框架中进行表单重复提交处理,以防止用户重复操作。一、原因分析造成表单重复提交的原因主要有两个:1.网络延迟:当用户点击提交按钮后,表


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版