表单输入绑定、组件基础

目标:

  1. 熟练掌握vue中表单的处理方式
  2. 对之前学习的内容简单回顾一下,并写一个实例,学以致用(最好脱离文档)

vue中表单的处理方式

  1. vue中表单的处理使用了v-model指令, 这个指令可以直接把一个数据绑定到表单元素中的value,checked,selected特性,同时这些特性也会被忽略掉初始值,而总是将vue实例的数据作为数据来源.
  2. 使用了v-model之后<textarea></textarea>之间的插值就不会有效了,会被v-model代替.

双向绑定(v-model)

1.绑定value: text,textarea(字符串)

text:

<input v-model="message" placeholder="edit me">

textarea:

<textarea v-model="message" placeholder="add multiple lines"></textarea>

2.绑定checked: checkout(单个绑定布尔值,多个绑定字符串数组), radio(字符串)

checkout(单个):

<input type="checkbox" id="checkbox" v-model="checked">

checkout(多个):

<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>

radio:

<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>

3.绑定selected: select(字符串)

<select v-model="selected">
<option disabled value="">请选择</option>
<option>A</option>
<option>B</option>
<option>C</option>
</select>

修饰符(用在v-model指令上)

.lazy: 触发的事件不一样,使用change触发,而不是input触发

.number: 自动转为数字类型

.trim:自动过滤后卫空白符号

例子

form.html

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>表单输入绑定</title>
<script src="https://cdn.bootcss.com/vue/2.5.17-beta.0/vue.min.js"></script>
</head>
<body>
<div id="app">
<form>
<!-- 文本 -->
<input type="text" v-model="formData.textValue">{{formData.textValue}}<br>
<textarea v-model="formData.textareaValue"></textarea>{{formData.textareaValue}}<br>
<!-- checkout(单个) -->
<input type="checkbox" id="checkbox" v-model="formData.isChecked"><label for="checkbox">点我啊</label><br>
<!-- 多个多选 -->
<input type="checkbox" id="haha" value="haha" v-model="formData.checkedValues">
<label for="haha">哈哈</label>
<input type="checkbox" id="hoho" value="hoho" v-model="formData.checkedValues">
<label for="hoho">呵呵</label>
<input type="checkbox" id="hihi" value="hihi" v-model="formData.checkedValues">
<label for="hihi">嘻嘻</label>
<br>
多选选中的是<span v-for="value of formData.checkedValues"> {{value}} </span>
<br>
<!-- 单选 -->
<input type="radio" id="one" value="one" v-model="formData.pickedValue">
<label for="one">one</label>
<input type="radio" id="two" value="two" v-model="formData.pickedValue">
<label for="two">two</label>
<input type="radio" id="three" value="three" v-model="formData.pickedValue">
<label for="three">three</label>
<br>
单选选中的是<span> {{formData.pickedValue}} </span>
<br>
<!-- 下拉选择框 -->
<select v-model="formData.selectedValue">
<option disabled value="">请选择</option>
<option>A</option>
<option>B</option>
<option>C</option>
</select>
<br>
下拉选择框选中的是<span> {{formData.selectedValue}} </span>
<br>
<a @click="submitForm">提交</a>
</form>
</div>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {
formData: {
textValue: '',
textareaValue: '',
isChecked: true,
checkedValues: [],
pickedValue:'',
selectedValue: ''
},
msg: '这是一句消息'
},
methods: {
submitForm: function(){
for(var key in this.formData) {
obj[key] = this.formData[key];
}
console.log(this.formData);
console.log(this.msg);
}
}
});
</script>
</body>
</html>

Vue学习计划基础笔记(五) - 表单输入绑定、组件基础的更多相关文章

  1. Vue.js教程--基础2(事件处理 表单输入绑定

    事件处理 表单输入绑定 事件处理 监听v-on 监听 DOM 事件,并在触发时运行一些 JavaScript 代码. 可以在v-on:click=''加内联语句. 有时也需要在内联语句处理器中访问原始 ...

  2. vue学习笔记(六)表单输入绑定

    前言 在上一章vue学习笔记(四)事件处理器这一篇博客的内容中,我们已经了解vue是如何绑定事件的,而本篇博客主要讲解的是vue中表单输入的绑定,通常我们自己提交信息的时候都是通过表单将信息到服务器的 ...

  3. Vue 学习笔记之 —— 表单输入绑定

    Vue 中文文档 https://cn.vuejs.org/ 不多说,直接上干货. v-model 指定,用来在input textarea 等表单元素上创建双向数据绑定,负责监听用户的输入事件,以及 ...

  4. Vue.js学习笔记--3.表单输入绑定

    整理自官网教程 -- https://cn.vuejs.org/ 利用v-model可以实现表单元素的value与后台数据的双向绑定,具体用法如下: <!--文本--> <input ...

  5. Blazor和Vue对比学习(基础1.9):表单输入绑定和验证,VeeValidate和EditFrom

    这是基础部分的最后一章,内容比较简单,算是为基础部分来个HappyEnding.我们分三个部分来学习: 表单输入绑定 Vue的表单验证:VeeValidate Blazor的表单验证:EditForm ...

  6. 前端MVC Vue2学习总结(五)——表单输入绑定、组件

    一.表单输入绑定 1.1.基础用法 你可以用 v-model 指令在表单控件元素上创建双向数据绑定.它会根据控件类型自动选取正确的方法来更新元素.尽管有些神奇,但 v-model 本质上不过是语法糖, ...

  7. Vue的指令系统、计算属性和表单输入绑定

    指令系统 指令 (Directives) 是带有 v- 前缀的特殊特性.指令特性的值预期是单个 JavaScript 表达式 (v-for 是例外情况,稍后我们再讨论).指令的职责是,当表达式的值改变 ...

  8. Vue表单输入绑定(文本框和复选框)

    文本框 <!DOCTYPE html><html>    <head>        <meta charset="utf-8">  ...

  9. VUE:事件处理和表单输入绑定

    事件处理 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...

随机推荐

  1. HDU1005 Number Sequence(找规律,周期是变化的)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1005 Number Sequence Time Limit: 2000/1000 MS (Java/O ...

  2. JAVA语言编程思维入门

    Java语言是一门强数据类型语言,也就是所有的数据有自己的数据类型,不能搞混淆.比如整数int 字符串String 不能用int a="字符串123";这样写是错的,因为数据类型不 ...

  3. XIB

    Xib加载的几种方法 - 简书 一天一点xib_10说说原理.优化方面的东西吧 - 简书 自定义View的封装和xib文件的使用详解|xiaoyou's blog 纯代码封装自定义View和XIB封装 ...

  4. vue 复习(2)v-bind的应用 v-bind:classv-binf:style

    dasdclass与style绑定v-bind 1. 绑定HTML Class 对象语法 有些时候我们想动态的切换class的类名.在原生的js或jq中我们就要通过事件来动态的改变class类名,但在 ...

  5. node多图或者单图上传

    <form id="form" enctype="multipart/form-data"> <input type="text&q ...

  6. 『ACM C++』 PTA 天梯赛练习集L1 | 018-020

    终于一周有这么一天能够安静下来好好学习打打题,还是很美滋滋的哈哈~加油加油~ ------------------------------------------------L1-018------- ...

  7. MVC和MVT的区别

    首先,MVC和MVT是框架式不是设计模式. 框架与设计模式虽然相似,但却有着根本的不同.设计模式是对在某种环境中反复出现的问题以及解决该问题的方案的描述,它比框架更抽象:框架可以用代码表示,也能直接执 ...

  8. tp3.2和Bootstrap模态框导入excel表格数据

    导入按钮 <button class="btn btn-info" type="button" id="import" data-to ...

  9. 【Mac】解决「无法将 chromedriver 移动到 /usr/bin 目录下」问题

    问题描述 在搭建 Selenium 库 + ChromeDriver 爬虫环境时,遇到了无法将 chromedriver 移动到 /usr/bin 目录下的问题,如下图: 一查原来是因为系统有一个 S ...

  10. kali更新源相关 -- 没有release文件、签名无效、404

    kali更新源相关 -- 没有release文件.签名无效.404 这个随笔主要是处理Mac下使用VMare虚拟机安装Kali时候我遇到的一些关于更新源的问题 (因为本人为了这个问题折腾了四五个小时, ...