vue学习九(表单输入绑定v-model)

2024-08-31 22:08

本文主要是介绍vue学习九(表单输入绑定v-model),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • v-model 表单基础用法
        • 文本
        • 多行文本
        • 复选框
        • 多个复选框
        • 单选按钮
        • 选择框
        • 多选择框
        • v-for 渲染的动态选项
        • lazy
        • number
        • trim

v-model 表单基础用法

你可以用 v-model 指令在表单 、 及 元素上创建双向数据绑定,v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。

文本
 <div id="div1"><input v-model="message" placeholder="edit me"><p>Message is: {{ message }}</p></div><script type="text/javascript">new Vue({el: "#div1",data: {message: "msg"}})</script>

效果图:当在文本框中输入等等,响应的更新到P标签文本

等等(这里是文本框)
Message is: 等等
多行文本
  <div id="div2"><span>Multiline message is:</span><p style="white-space: pre-line;">{{ message }}</p><br><textarea v-model="message" placeholder="add multiple lines"></textarea></div><script type="text/javascript">new Vue({el: "#div2",data: {message: "msg"}})</script>

在这里插入图片描述

复选框
 <div id="div3"><input type="checkbox" id="checkbox" v-model="checkeder"><label for="checkbox">{{ checkeder }}</label></div><script type="text/javascript">new Vue({el: "#div3",data: {checkeder: false}})</script>

在这里插入图片描述

多个复选框
<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><script type="text/javascript">new Vue({el: "#example-3",data: {checkedNames: []}})</script>

效果如下:
在这里插入图片描述

单选按钮
<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><script type="text/javascript">new Vue({el: "#example-4",data: {picked: ""}})</script>

效果如下:
在这里插入图片描述

选择框
    <div id="example-5"><select v-model="selecteder"><option disabled value="">请选择</option><option>A</option><option>B</option><option>C</option></select><span>Selected: {{ selecteder }}</span></div><script type="text/javascript">new Vue({el: '#example-5',data: {selecteder: ''}})</script>

效果图:
在这里插入图片描述
在这里插入图片描述

多选择框
 <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><script type="text/javascript">new Vue({el: '#example-6',data: {selected: []}})</script><!-- 7、用 v-for 渲染的动态选项: --><div id="div4"><select v-model="selected"><option v-for="option in options" v-bind:value="option.value">{{ option.text }}</option></select><span>Selected: {{ selected }}</span></div>

效果图:
在这里插入图片描述

v-for 渲染的动态选项
<div id="div4"><select v-model="selected"><option v-for="option in options" v-bind:value="option.value">{{ option.text }}</option></select><span>Selected: {{ selected }}</span></div><script type="text/javascript">new Vue({el: '#div4',data: {selected: 'A',options: [{ text: 'One', value: 'A' },{ text: 'Two', value: 'B' },{ text: 'Three', value: 'C' }]}})</script>

效果图如下:
在这里插入图片描述

lazy

在默认情况下,v-model 在每次 input 事件触发后将输入框的值与数据进行同步 (除了上述输入法组合文字时)。你可以添加 lazy 修饰符,从而转变为使用 change 事件进行同步:

   <div id="div5"><input v-model.lazy="msg"><p>{{ msg }}</p></div><script type="text/javascript">new Vue({el: "#div5",data: {msg: "信息"}})</script>
number
<div id="div6"><input v-model.number="age" type="number"><p>{{ age }}</p></div><script type="text/javascript">new Vue({el: "#div6",data: {age: 5}})</script>
trim
  <div id="div7"><input v-model.trim="msg"><p>{{ msg }}</p></div><script type="text/javascript">new Vue({el: "#div7",data: {msg: "  我的  "}})</script>

这篇关于vue学习九(表单输入绑定v-model)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1125121

相关文章

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

Pydantic中model_validator的实现

《Pydantic中model_validator的实现》本文主要介绍了Pydantic中model_validator的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录引言基础知识创建 Pydantic 模型使用 model_validator 装饰器高级用法mo