收集表单数据

简介: 收集表单数据


<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>收集表单数据</title>
    <script type="text/javascript" src="../js/vue.js"></script>
  </head>
  <body>
    <div id="root">
      <form @submit.prevent="demo">
        账号:<input type="text" v-model.trim="userInfo.account"> <br/><br/>
        密码:<input type="password" v-model="userInfo.password"> <br/><br/>
        年龄:<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:0,
          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"/>

没有配置value属性,那么收集的是checked属性(勾选 or 未勾选,是布尔值)

配置了value属性:

v-model的初始值是非数组,那么收集的就是checked(勾选 or 未勾选,是布尔值)

v-model的初始值是数组,那么收集的就是value组成的数组

v-model的三个修饰符:


lazy:失去焦点后再收集数据

number:输入字符串转为有效的数字

trim:输入首尾空格过滤

相关文章
|
7月前
|
存储 数据采集 数据可视化
数据
【6月更文挑战第21天】数据。
71 3
|
4月前
|
搜索推荐 大数据 数据处理
数据特点
数据特点
83 8
|
8月前
|
数据安全/隐私保护 C++
C++程序中共用数据的保护
C++程序中共用数据的保护
58 2
|
机器学习/深度学习 算法 数据挖掘
灰太狼的数据世界(四)
灰太狼的数据世界(四)
98 0
|
存储 数据库 索引
灰太狼的数据世界(二)
灰太狼的数据世界(二)
153 0
|
存储 算法 数据可视化
灰太狼的数据世界(一)
灰太狼的数据世界(一)
162 0
|
Linux
6.3.3 数据撷取
6.3.3 数据撷取
88 0
|
人工智能 算法 新能源
数据上新啦!
风机检测算法与风机分布数据集上线
数据上新啦!
|
Java 数据库连接 数据库
数据的写入
数据的写入
115 1