因为项目需求,需要实现分段输入,即“344”显示,搜索网上,找到一些代码,与产品经理要求的“某品会”的效果还有一段距离,经过分析发现,需要实现以下需求:
1.总长可输入13位字符,数字和空格;
2.当删除空格的时候,拦截事件,如果光标是在字符中间的话,那就将光标往前移一位,即将光标移动到空格前面;而如果光标是在最后面时,那么不进行拦截(主要对参考代码进行这个需求的改造)
3.粘贴时,需要将非数字和非空格的字符删除(ios里复制联系人时会带着空格)
完整代码如下:
<div id="app">
<input v-model="mobile" type="tel" ref="mobile" maxlength="13" @keyup="inputMobile" @paste="inputMobile" @keydown="onKeydown" placeholder="请填写充值手机号"/>
</div>
new Vue({
el: '#app',
data: {
mobile: "",
telephone: ""
},
mounted: function() {},
watch: {
telephone(newValue, oldValue) {