收集表单数据

简介: 收集表单数据


<!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:输入首尾空格过滤

相关文章
数据的压迫
最近有点烦躁,项目上的效益不是很好,所以就开始压缩工时,更多的项目带来的是更短的时间,大家不再能友好的沟通,每个人的身上都或多或少带着戾气. 我有时候也在想为什么会这样,整体环境导致了如今的局面,大家应该一致对外,敢想敢干才是,直到前不久忽然得知一个同学有了更好的发展,薪资的水平是我的三倍还多,我也失衡了,一整夜都在失眠,所以我就想写篇文章,既然是干数据的,那我就把这篇博客叫“数据的压迫”.
66 0
|
存储 数据库 索引
灰太狼的数据世界(二)
灰太狼的数据世界(二)
168 0
|
JavaScript 容器
如果添加1条数据会等待10秒,你愿意等吗
首先说明,这个问题出于自己写的一个小demo,很简单的数据添加操作,起初就是添加一条数据,成功之后刷新页面。后面觉得,刷新页面体验不好,就改成成功之后异步加载数据了,界面体验好了一些。 但是突然的就在想,动态追加的数据其实填写表单的时候就已经有了,等待成功的这个过程和我想要追加到元素其实关系并不是很大,并不需要等它成功之后给我返回数据我才能追加元素,之所以等成功只是为了等一个“信号”,表示成功加入到库里了。
641 0
|
机器学习/深度学习 存储 人工智能
你是否适应数据正在“看”着你?
从最近针对AI技术发展与影响进行的调查、研究、预测以及其他量化评估结果来看,消费者对于数据隐私、AI给工作带来的影响以及AI优先层面的竞争,普遍抱有困惑且矛盾的态度。

热门文章

最新文章