Vue技术—收集表单数据

本文详细介绍了Vue.js中不同类型的表单元素如何使用v-model收集数据,包括文本输入、单选按钮、复选框、数字输入、选择框及文本区域等。同时,提到了v-model的修饰符lazy、number和trim的用法,以及如何处理用户输入的数据转换和验证。通过一个实例展示了如何在表单提交时获取和打印用户填写的信息。
摘要由CSDN通过智能技术生成

收集表单数据:
若:<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:输入首位空格过滤

<div id="root" >
    <form @submit.prevent="demo">
        <label>账号:<input type="text" v-model.trim="userinfo.name"></label><br><br>
        <label>密码:<input type="password" v-model="userinfo.password"></label><br><br>
        <label>年龄:<input type="number" v-model.number="userinfo.age"></label><br><br>
        性别:
        <label><input type="radio" v-model="userinfo.sex" value="no">保密</label>
        <label><input type="radio" v-model="userinfo.sex" value="man"></label>
        <label><input type="radio" v-model="userinfo.sex" value="woman"></label><br><br>
        爱好:
        <label><input type="checkbox" v-model="userinfo.hobby" value="game">打游戏</label>
        <label><input type="checkbox" v-model="userinfo.hobby" value="xuexi">学习</label>
        <label><input type="checkbox" v-model="userinfo.hobby" value="eat">吃饭</label><br><br>
        所在校区:
        <select v-model="userinfo.school">
            <option value="">请选择校区</option>
            <option value="shanghai">上海</option>
            <option value="beijing">北京</option>
            <option value="tianjin">天津</option>
        </select><br><br>
        其他信息:
        <textarea v-model.lazy="userinfo.other"></textarea><br><br>
        <input type="checkbox" v-model="userinfo.agree">阅读并接受 <a href="www.baidu.com">用户协议</a><br><br>
        <button>提交</button>
    </form>
</div>
new Vue({
        el:'#root',
        data:{
           userinfo:{
               name:'',
               password:'',
               age:'',
               sex:'no',
               hobby:[],
               school:'shanghai',
               other:'',
               agree:''
           }
        },
        methods:{
            demo(){
                console.log(JSON.stringify(this.userinfo))
            }
        }
    })
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值