vue 中的input输入框type=number时一个缺陷


 

本来是在vue里发现获取不到 input[ type="number"]的值,就是输入两个小数点的数值,比如1.1.1,以为是vue的错误,然而不是,vue只做了数字处理

不明白为什么获取不到值还让输入两个小数点呢,这就尴尬了。

//vue里对输入的值做的处理
function
toNumber (val) { var n = parseFloat(val); return isNaN(n) ? val : n; }



<!
DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div id="app">       当input的type=number时,当输入的数据有两个小数点的时候,比如1.1.1,此时获取不到this.msg的值 <input type="number" v-model="msg" @input="check"> </div> <script src="https://cdn.bootcss.com/vue/2.5.17-beta.0/vue.min.js"></script> <script> new Vue({ el: '#app', data: { msg: '', }, methods: { check(val) { console.log(this.msg, 'this.msg'); } } }) </script> </body> </html>

 所以呢,输入时数字的时候,可以用input[type="text"],直接用正则验证数值.


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM