vue获取input输入值的问题解决办法


Posted in Javascript onOctober 17, 2017

vue获取input输入值的问题解决办法

v-for里有多行input输入框,vue怎么获取某行的输入的值,随便写了点代码,意思就是后台返回了多行的list集合,页面显示多行输入框,当修改某行的值时进行校验,输入错误友好提示下,后边加个清空按钮,点击清空当前行数据,最开始的想法是,用v-bind:value绑定值,这样就出现一种情况,页面输入的值无法获取到,v-bind不会修改原始list里的值,而且ref也不能动态绑定,ref只能全部获取,this.$refs.itemPriceRef[],这样取的是所有输入框的值,是个数组,可以在提交前进行验证,但是无法判断某一行操作,并且vue操作DOM元素非常非常差,找了N多资料愣是没找到获取值的方法,最后发现用v-model直接绑定list里的值问题解决了,这样在修改时会直接修改list里的值,就不存在输入值和原始值不同的问题了,VUE在绑定值方面做挺方便的,刚开始学vue,用的不熟练,没想到这种方法,浪费了好多时间,不过也学会了很多东西。

PS:总结了3种方式获取页面输入框的值,1是用v-bind:value + ref方式获取,这种只适用有具体的输入框才行,

比如登录页,只有帐号密码输入框,

2是用v-model方式获取,这种是修改原始list值,所以在提交时,还需要遍历下原来的list,有点麻烦,

3是用v-model + ref 就是我写的这样,和2的区别是在提交时,直接用ref取值,感觉在未知数量的输入框时更好用

自己随便总结了下,估计在大神看来不值一提,但是对于我一个刚学习vue的人来说,确实浪费了我挺长时间,

花点时间记录下来,加深下印象。

<div v-model="skuList" v-for="(val, key) in skuList "> 
<div> 
<div> 
<span>价格:</span> 
<span><input type="text" v-model="val.price" ref="priceRef" v-on:change="checkPrice(val)"></span>
<pre name="code" class="html"><i v-on:click="dataClearStockPrice(val)"></i></pre></div><div><span>上限:</span><span><input class="stockTotal" type="text" v-model="val.stock" ref="totalRef"v-on:change="checkStock(val)"<span style="font-family:Arial,Helvetica,sans-serif"> ></span></span> 
<pre></pre> 
<p></p> 
<pre></pre> 
<pre name="code" class="html"><span style="font-family:Arial, Helvetica, sans-serif;"><i v-on:click="dataClearStockTotal(val)"></i> 
</span></div> 
</div> 
</div></pre><pre name="code" class="html"></pre><pre name="code" class="html">    checkPrice:function (data) { 
    var priceReg = /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/; 
    if(!priceReg.test(data.price)){ 
     Toast({message: "格式错误"}); 
     data.price = ""; 
    } 
   }, 
   checkStock:function (data) { 
    var totalReg = /^[0-9]*$/; 
    if(!totalReg.test(data.stock)){ 
     Toast({message: "格式错误"}); 
     data.stock = ""; 
    } 
   }, 
   dataClearStockPrice:function(data){ 
    data.price = ''; 
   }, 
   dataClearStockTotal:function(data){ 
    data.stock = ''; 
   },</pre><br data-filtered="filtered"> 
<span style="white-space:pre" data-filtered="filtered"></span> 
<pre name="code" class="html"></pre> 
<p></p> 
<p><br data-filtered="filtered"> 
</p>

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
Jquery 动态添加按钮实现代码
May 06 Javascript
location.href 在IE6中不跳转的解决方法与推荐使用代码
Jul 08 Javascript
jquery 通过name快速取值示例
Jan 24 Javascript
使用javascript做的一个随机点名程序
Feb 13 Javascript
JS+CSS实现大气清新的滑动菜单效果代码
Oct 22 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
深入学习AngularJS中数据的双向绑定机制
Mar 04 Javascript
简单谈谈json跨域
Mar 13 Javascript
js和C# 时间日期格式转换的简单实例
May 28 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
Feb 22 Javascript
微信小程序获取用户绑定手机号方法示例
Jul 21 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
Aug 07 Javascript
node.js 用socket实现聊天的示例代码
Oct 17 #Javascript
Bootstrap图片轮播效果详解
Oct 17 #Javascript
vue组件之Alert的实现代码
Oct 17 #Javascript
JS实现按钮添加背景音乐示例代码
Oct 17 #Javascript
vue-cli之router基本使用方法详解
Oct 17 #Javascript
教你用Cordova打包Vue项目的方法
Oct 17 #Javascript
vue与TypeScript集成配置最简教程(推荐)
Oct 17 #Javascript
You might like
3.从实例开始
2006/10/09 PHP
常用的PHP数据库操作方法(MYSQL版)
2011/06/08 PHP
php 函数中静态变量使用的问题实例分析
2020/03/05 PHP
一段批量给页面上的控件赋值js
2010/06/19 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
Markdown与Bootstrap相结合实现图片自适应属性
2016/05/04 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
Angular2 Service实现简单音乐播放器服务
2017/02/24 Javascript
javascript实现圣旨卷轴展开效果(代码分享)
2017/03/23 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
解决vue处理axios post请求传参的问题
2018/03/05 Javascript
AngularJS $http post 传递参数数据的方法
2018/10/09 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
bootstrap-paginator服务器端分页使用方法详解
2020/02/13 Javascript
vue中利用iscroll.js解决pc端滚动问题
2020/02/15 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
[53:38]OG vs LGD 2018国际邀请赛淘汰赛BO3 第三场 8.26
2018/08/30 DOTA
python实现通过pil模块对图片格式进行转换的方法
2015/03/24 Python
wxPython中listbox用法实例详解
2015/06/01 Python
Python使用multiprocessing创建进程的方法
2015/06/04 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
《猫》教学反思
2014/02/26 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
机关作风建设心得体会
2014/10/22 职场文书
个人作风建设总结
2014/10/23 职场文书
先进基层党组织材料
2014/12/25 职场文书
2015年调度员工作总结
2015/04/30 职场文书
红色影片观后感
2015/06/18 职场文书
医院保洁员管理制度
2015/08/05 职场文书
外出培训学习心得体会
2016/01/18 职场文书
PyTorch 如何检查模型梯度是否可导
2021/06/05 Python
Redis如何实现分布式锁
2021/08/23 Redis
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers