首页 > 其他分享 >Vue之表单元素

Vue之表单元素

时间:2022-12-24 17:35:32浏览次数:38  
标签:Vue 收集 元素 value 表单 勾选 model

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>收集表单数据</title>
        <script type="text/javascript" src="../js/vue.js"></script>
    </head>
    <body> 
        <!-- 准备好一个容器-->
        <div id="root">
          <!--  @submit.prevent="demo" 是为了阻止点击提交之后的表单的默认跳转-->
            <form @submit.prevent="demo">
                账号:<input type="text" v-model.trim="userInfo.account"> <br/><br/>
                密码:<input type="password" v-model="userInfo.password"> <br/><br/>
                <!--自动将用户的输入值转为数值类型:v-model.number -->
                年龄:<input type="number" v-model.number="userInfo.age"> <br/><br/>
                性别:
                男<input type="radio" name="sex" v-model="userInfo.sex" value="male">
                女<input type="radio" name="sex" v-model="userInfo.sex" value="female"> <br/><br/>
                爱好:
                学习<input type="checkbox" v-model="userInfo.hobby" value="study">
                打游戏<input type="checkbox" v-model="userInfo.hobby" value="game">
                吃饭<input type="checkbox" v-model="userInfo.hobby" value="eat">
                <br/><br/>
                所属校区
                <select v-model="userInfo.city">
                    <option value="">请选择校区</option>
                    <option value="beijing">北京</option>
                    <option value="shanghai">上海</option>
                    <option value="shenzhen">深圳</option>
                    <option value="wuhan">武汉</option>
                </select>
                <br/><br/>
                其他信息:
                <textarea v-model.lazy="userInfo.other"></textarea> <br/><br/>
                <input type="checkbox" v-model="userInfo.agree">阅读并接受<a href="http://www.atguigu.com">《用户协议》</a>
                <button>提交</button>
            </form>
        </div>
    </body>

    <script type="text/javascript">
        Vue.config.productionTip = false

        new Vue({
            el:'#root',
            data:{
                userInfo:{
                    account:'',
                    password:'',
                    age:18,
                    sex:'female',
                    hobby:[],
                    city:'beijing',
                    other:'',
                    agree:''
                }
            },
            methods: {
                demo(){
                    console.log(JSON.stringify(this.userInfo))
                }
            }
        })
    </script>
</html>

 

  收集表单数据:                     若:<input type="text"/>,则v-model收集的是value值,用户输入的就是value值。                     若:<input type="radio"/>,则v-model收集的是value值,且要给标签配置value值。                     若:<input type="checkbox"/>                             1.没有配置input的value属性,那么收集的就是checked(勾选 or 未勾选,是布尔值)                             2.配置input的value属性:                                     (1)v-model的初始值是非数组,那么收集的就是checked(勾选 or 未勾选,是布尔值)                                     (2)v-model的初始值是数组,那么收集的的就是value组成的数组                     备注:v-model的三个修饰符:                                     lazy:失去焦点再收集数据                                     number:输入字符串转为有效的数字                                     trim:输入首尾空格过滤

标签:Vue,收集,元素,value,表单,勾选,model
From: https://www.cnblogs.com/anjingdian/p/17003070.html

相关文章

  • Vue之set()方法
     可以在指定的对象里添加新的key值示例:<!DOCTYPEhtml><html><head><metacharset="UTF-8"/><title>Vue监测数据改变的原理</title>......
  • Docker+Jenkins+Gitee+Node+Vue构建dist包并通过publish over ssh传输到服务器替换重
    场景docker-compose入门以及部署SpringBoot+Vue+Redis+Mysql(前后端分离项目)以若依前后端分离版为例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/12837......
  • Vue监测数据改变的原理
      <!DOCTYPEhtml><html><head><metacharset="UTF-8"/><title>更新时的一个问题</title><scripttype="text/javascript"src="........
  • Vue排序
    <!DOCTYPEhtml><html><head><metacharset="UTF-8"/><title>列表排序</title><scripttype="text/javascript"src="../js/vue.js"><......
  • Vue之列表过滤
     示例:<!DOCTYPEhtml><html><head><metacharset="UTF-8"/><title>列表过滤</title><scripttype="text/javascript"src="../js/v......
  • Python__12--列表元素的增、删、改、排序
    1列表元素的增、删、改、排序除sorted(),id均不变1.1加append()在列表的末尾添加一个元素测试代码:lst=[10,20,30]print(id(lst))lst.append(100)print(lst,id(l......
  • 基于ZR.VUE 前端的改造,页面刷新报错
     问题描述:前后端分离开发,分开部署.页面刷新直接报404错误的解决办法提示: 先在 .env.development中配置 VUE_APP_BASE_API,将'/'替换为后端地址'http......
  • 移除数组中的元素
    移除数组中的元素,双指针算法,利用元数组元素覆盖的方式,利用指针移动到指定的元素,即可一次便利实现vara=[1,2,3,4,5]vart=3varremove=(nums,t)=>{for(varf......
  • Vuex
    简介​  在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。......
  • Vue之key的原理
    面试题:react、vue中的key有什么作用?(key的内部原理)                        1.虚拟DOM中key的作用:      ......