vue表单的用法

你可以用 v-model 指令在表单控件元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,但 v-model 本质上不过是语法糖,它负责监听用户的输入事件以更新数据,并特别处理一些极端的例子。

v-model 会忽略所有表单元素的 valuecheckedselected 特性的初始值。因为它会选择 Vue 实例数据来作为具体的值。你应该通过 JavaScript 在组件的 data 选项中声明初始值。

对于要求 IME (如中文、日语、韩语等) (IME 意为“输入法”)的语言,你会发现 v-model 不会在 ime 输入中得到更新。如果你也想实现更新,请使用 input 事件。

文本

<input v-model="message" placeholder="edit me">
<p>Message is: {{ message }}</p>

Message is:

多行文本

<span>Multiline message is:</span>
<p style="white-space: pre-line;">{{ message }}</p>
<br>
<textarea v-model="message" placeholder="add multiple lines"></textarea>
Multiline message is:

m kl


在文本区域插值 (<textarea></textarea>) 并不会生效,应用 v-model 来代替。

复选框

单个勾选框,逻辑值:

<input type="checkbox" id="checkbox" v-model="checked">
<label for="checkbox">{{ checked }}</label>
false

多个勾选框,绑定到同一个数组:

<div id='example-3'>
<input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
<label for="jack">Jack</label>
<input type="checkbox" id="john" value="John" v-model="checkedNames">
<label for="john">John</label>
<input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
<label for="mike">Mike</label>
<br>
<span>Checked names: {{ checkedNames }}</span>
</div>
new Vue({
el: '#example-3',
data: {
checkedNames: []
}
})
Jack  John  Mike 
Checked names: []

单选按钮

<div id="example-4">
<input type="radio" id="one" value="One" v-model="picked">
<label for="one">One</label>
<br>
<input type="radio" id="two" value="Two" v-model="picked">
<label for="two">Two</label>
<br>
<span>Picked: {{ picked }}</span>
</div>
new Vue({
el: '#example-4',
data: {
picked: ''
}
})
One 
 Two 
Picked:

选择列表

单选列表:

<div id="example-5">
<select v-model="selected">
<option disabled value="">请选择</option>
<option>A</option>
<option>B</option>
<option>C</option>
</select>
<span>Selected: {{ selected }}</span>
</div>
new Vue({
el: '...',
data: {
selected: ''
}
})
请选择   A   B   C Selected: A

如果 v-model 表达初始的值不匹配任何的选项,<select> 元素就会以”未选中”的状态渲染。在 iOS 中,这会使用户无法选择第一个选项,因为这样的情况下,iOS 不会引发 change 事件。因此,像以上提供 disabled 选项是建议的做法。

多选列表 (绑定到一个数组):

<div id="example-6">
<select v-model="selected" multiple style="width: 50px;">
<option>A</option>
<option>B</option>
<option>C</option>
</select>
<br>
<span>Selected: {{ selected }}</span>
</div>
new Vue({
el: '#example-6',
data: {
selected: []
}
})
A   B   C 
Selected: [ "C" ]

动态选项,用 v-for 渲染:

<select v-model="selected">
<option v-for="option in options" v-bind:value="option.value">
{{ option.text }}
</option>
</select>
<span>Selected: {{ selected }}</span>
new Vue({
el: '...',
data: {
selected: 'A',
options: [
{ text: 'One', value: 'A' },
{ text: 'Two', value: 'B' },
{ text: 'Three', value: 'C' }
]
}
})
One            Two            Three      Selected: C

值绑定

对于单选按钮,勾选框及选择列表选项,v-model 绑定的 value 通常是静态字符串 (对于勾选框是逻辑值):

<!-- 当选中时,`picked` 为字符串 "a" -->
<input type="radio" v-model="picked" value="a">
<!-- `toggle` 为 true 或 false -->
<input type="checkbox" v-model="toggle">
<!-- 当选中时,`selected` 为字符串 "abc" -->
<select v-model="selected">
<option value="abc">ABC</option>
</select>

但是有时我们想绑定 value 到 Vue 实例的一个动态属性上,这时可以用 v-bind 实现,并且这个属性的值可以不是字符串。

复选框

<input
type="checkbox"
v-model="toggle"
v-bind:true-value="a"
v-bind:false-value="b"
>
// 当选中时
vm.toggle === vm.a
// 当没有选中时
vm.toggle === vm.b

单选按钮

<input type="radio" v-model="pick" v-bind:value="a">
// 当选中时
vm.pick === vm.a

选择列表的选项

<select v-model="selected">
<!-- 内联对象字面量 -->
<option v-bind:value="{ number: 123 }">123</option>
</select>
// 当选中时
typeof vm.selected // => 'object'
vm.selected.number // => 123

修饰符

.lazy

在默认情况下,v-model 在 input 事件中同步输入框的值与数据 (除了 上述 IME 部分),但你可以添加一个修饰符 lazy ,从而转变为在 change 事件中同步:

<!-- 在 "change" 而不是 "input" 事件中更新 -->
<input v-model.lazy="msg" >

.number

如果想自动将用户的输入值转为 Number 类型 (如果原值的转换结果为 NaN 则返回原值),可以添加一个修饰符 number 给 v-model 来处理输入值:

<input v-model.number="age" type="number">

这通常很有用,因为在 type="number" 时 HTML 中输入的值也总是会返回字符串类型。

.trim

如果要自动过滤用户输入的首尾空格,可以添加 trim 修饰符到 v-model 上过滤输入:

<input v-model.trim="msg">

转载于:https://www.cnblogs.com/fdxxiaobai/p/7704665.html

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

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

相关文章

php执行npm命令_npm系列之命令执行

当我想使用vue的脚手架来创建一个项目的时候&#xff0c;我应该怎么做&#xff1f;执行命令 npm install -g vue/cli 全局安装&#xff0c;之后就可以在控制台中使用vue create programName 来创建一个项目。为什么可以直接使用vue命令&#xff1f;这类支持命令的依赖会在项目中…

模拟产品展示 Flash无法展示的追踪过程

鼠标滑过小图时&#xff0c;左侧前四张大图可以&#xff0c;但是最后那张大图无法展示&#xff1a; falsh产品展示需要通过参数传递&#xff0c;把关联产品id的图片get出来&#xff0c;如&#xff1a; http://192.168.8.166:90/category/prod_img.aspx?prodid101 结果&#xf…

git提交 本地分支和远程分支断开连接

1级标题 当 git push origin branch_name时遇到报错如下&#xff1a; fatal:‘origin’ does not appear to be a git repository fatal:Could not read from remote repository 原因&#xff1a; 本地分支和远程分支断开连接 解决方法&#xff1a; cd 本地分支里 1、git…

编程高手箴言

本书是作者十余年编程生涯中的技术和经验的总结。内容涵盖了从认识CPU、Windows运行机理、 编程语言的运行机理&#xff0c;到代码的规范和风格、分析方法、调试方法和内核优化&#xff0c;内有作者对许多问题 的认知过程和透彻的分析&#xff0c;以及优秀和精彩的编程经验。…

nodejs里的module.exports和exports

引 在node.js中我们可以使用module.exports和exports导出模块&#xff0c;设置导出函数、数组、变量等等 为什么可以用这两个模块&#xff1f; 或者直接问&#xff0c;node.js的模块功能是怎么实现的。 这样得益于javascript是函数性的语言&#xff0c;并支持闭包。 js的闭包 直…

c语言贪吃蛇最简单代码_C语言指针,这可能是史上最干最全的讲解啦(附代码)!!!...

点击上方“大鱼机器人”&#xff0c;选择“置顶/星标公众号”福利干货&#xff0c;第一时间送达&#xff01;指针对于C来说太重要。然而&#xff0c;想要全面理解指针&#xff0c;除了要对C语言有熟练的掌握外&#xff0c;还要有计算机硬件以及操作系统等方方面面的基本知识。所…

SpringSecurity深度解析与实践(3)

这里写自定义目录标题 引言SpringSecurity之授权授权介绍java权限集成 登录失败三次用户上锁 引言 SpringSecurity深度解析与实践&#xff08;2&#xff09;的网址 SpringSecurity之授权 授权介绍 Spring Security 中的授权分为两种类型&#xff1a; 基于角色的授权&#…

简单解释什么是 依赖注入 和 控制反转

简单解释什么是 依赖注入 和 控制反转2017-07-09 关于 依赖注入 与 控制反转 的概念有些人觉得很难理解&#xff0c;最近在给别人讲这个概念的时候梳理了一个比较好理解的解释&#xff0c;而且我认为非技术人员也应该能听的懂&#xff0c;因此分享给大家&#xff0c;希望下次你…

python pip install指定国内源镜像

有时候安装一些依赖包&#xff0c;网不好&#xff0c;直接超时&#xff0c;或者这个包就是死都下不下来的时候&#xff0c;可以指定国内源镜像。 pip install -i 国内镜像地址 包名 清华&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple 阿里云&#xff1a;http://mirr…

机器学习之单标签多分类及多标签多分类

单标签二分类算法 Logistic算法 单标签多分类算法 Softmax算法 One-Versus-One&#xff08;ovo&#xff09;&#xff1a;一对一 One-Versus-All / One-Versus-the-Rest&#xff08;ova/ovr&#xff09;&#xff1a; 一对多 ovo和ovr的区别 Error Correcting Output code…

ionic3 隐藏子页面tabs

看了几天ionic3 问题还挺多的&#xff0c;今天想把所有子页面tabs 给去掉&#xff0c;整了半天&#xff0c;发现app.Module 是可以配置的 修改 IonicModule.forRoot(MyApp&#xff09; imports: [BrowserModule,// IonicModule.forRoot(MyApp),HttpModule,IonicModule.forRoot(…

cas单点登录-jdbc认证(三)

前言 本节的内容为JDBC认证&#xff0c;查找数据库进行验证&#xff0c;其中包括&#xff1a; 密码加密策略&#xff08;无密码&#xff0c;简单加密&#xff0c;加盐处理&#xff09;认证策略&#xff08;jdbc&#xff09;一、业务需求 不同的公司&#xff0c;需求业务需求或者…

get clone 出现 fatal: the remote end hung up unexpectedly5 MiB | 892.00 KiB/s 报错信息

fatal: the remote end hung up unexpectedly5 MiB | 892.00 KiB/s 解决方案 &#xff08;亲测有效&#xff09; 解决方案如下&#xff1a; git clone时加上 --depth1&#xff0c;比如&#xff1a; git clone https://gitee.com/songyitian/tctm.git --depth 1depth用于指定…

mybatis foreach map_重学Mybatis(六)-------输入映射(含面试题)

博主将会针对Java面试题写一组文章&#xff0c;包括J2ee&#xff0c;SQL&#xff0c;主流Web框架&#xff0c;中间件等面试过程中面试官经常问的问题&#xff0c;欢迎大家关注。一起学习&#xff0c;一起成长&#xff0c;文章底部有面试题。入参映射关键字说明图中paramenterTy…

php输出多余的空格或者空行

1&#xff0c;文件是否有bom。可以通过脚步检测&#xff0c;或者利用notepa打开&#xff0c;查看编码格式。 2. <?php echo something; ?> 或许是你的php标签外&#xff0c;有空格或者空行。一般的项目都是用框架&#xff0c;包含很多的文件&#xff0c;如果一个个文…

执行git命令时出现fatal: ‘origin‘ does not appear to be a git repository错误

执行git命令时出现fatal: ‘origin’ does not appear to be a git repository错误 在执行git pull origin master时出现&#xff1a;   fatal: ‘origin’ does not appear to be a git repository   致命提示:“origin”看起来不是一个git存储库   fatal: Could not r…

蒋涛作序盛赞Leo新作为“程序员职场实用百科全书”——《程序员羊皮卷》连载(1)

《程序员羊皮卷》当当购买地址&#xff1a;http://product.dangdang.com/product.aspx?product_id20691986 互动购买地址&#xff1a;http://www.china-pub.com/196049 程序员行业从外面看起来有很多绚丽的光环&#xff0c;这里有无数以程序致富的天才&#xff0c;世界首富比…

matlab ones函数_Matlab中相见恨晚的命令(持续更新)

知乎上有个“有哪些让人相见恨晚的Matlab命令”的话题&#xff0c;很多答主提供的命令确实很实用&#xff0c;为了更方便大家的学习&#xff0c;我就知乎上的答案和我自己想到的都综合整理成了一篇文章&#xff0c;把我觉得很实用的指令整理出来。知乎原答案链接dbstop if erro…

机器学习之特征工程

特征工程-概念 特征工程是一个面向十分广的概念&#xff0c;只要是在处理数据就可以认为是在做特征工程。个人理解&#xff0c;真正意义上的特征工程还是数据降维和数据升维的过程。 而前期对数据的处理过程&#xff1a; 需要哪些数据&#xff1f;数据如何存储&#xff1f;数…

ArcGIS AO开发高亮显示某些要素

参考代码1 ifeaturecursor pcur ifeatureclass.search(iqueryfilter pfilter); pfilter.whereclause strAddress; //输入查询条件&#xff0c;也就是你寸地址的字段名didian ifeature pfeat pcur.nextfeature();// 如果pCur多个要素&#xff0c;则可以考虑将其合并并一起高亮…