日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue 輸入電話號碼自動按3-4-4分割功能的實現代碼

瀏覽:19日期:2024-11-15 17:02:27

輸入框綁定

<input type='phone' placeholder=' 請輸入手機號' maxlength='13' v-model='phoneNum'/>

監聽事件,每次號碼發生改變時觸發大體的邏輯是:先比較號碼變化前后的長度,判斷是輸入還是刪除,如果是輸入的話,利用正則表達式改變號碼格式。

watch: { phoneNum (newValue, oldValue) { // 監聽電話號碼 this.phoneNum = newValue.length > oldValue.length ? newValue.replace(/s/g, ’’).replace(/(d{3})(d{0,4})(d{0,4})/, ’$1 $2 $3’) : this.phoneNum.trim() if (this.phoneNum.length === 13) { // 驗證/保存的手機號碼,去除空格 this.state.checkPhoneNum = this.phoneNum.replace(/s/g, ’’) console.log(’輸入的電話號碼是:’, this.state.checkPhoneNum) } } },

效果示意

vue 輸入電話號碼自動按3-4-4分割功能的實現代碼

附錄:下面看下vue手機號按344分隔,銀行卡號每4位空格分隔

實現效果:

1. 手機號輸入/粘貼時,不允許輸入數字外的其它字符,按344分隔,最大輸入11位數字

2. 銀行卡號輸入/粘貼時,不允許輸入數字外的其它字符,每四位用空格分隔

vue 輸入電話號碼自動按3-4-4分割功能的實現代碼

代碼:

<template> <div class='form'> <p> 手機號: <input v-model='mobile' type='tel' ref='mobile' maxlength='13' @keyup='inputMobile' @paste='inputMobile' /> </p> <p> 銀行卡號: <input v-model='card' type='text' @keyup='inputCard' @paste='inputCard' /> </p> </div></template>

js:

<script> export default { data() { return { mobile: ’’, card: ’’ } }, methods: { inputMobile() { let value = this.mobile.replace(/D/g, ’’).substr(0, 11) // 不允許輸入非數字字符,超過11位數字截取前11位 let len = value.length if (len > 3 && len < 8) { value = value.replace(/^(d{3})/g, ’$1 ’) } else if (len >= 8) { value = value.replace(/^(d{3})(d{4})/g, ’$1 $2 ’) } this.mobile = value }, inputCard() { this.card = this.card.replace(/D/g, ’’) // 不允許輸入非數字字符 this.card = this.card.replace(/(d{4})(?=d)/g, ’$1 ’) // 4位一組,非獲取匹配最后一組數字,避免刪除到空格時會馬上自動補齊 } } } </script>

上述方案即可實現基本效果,但如果從中間開始刪除或添加內容時,光標會自動跑到最后,如下:

vue 輸入電話號碼自動按3-4-4分割功能的實現代碼

若想光標留在刪除/添加內容位置,需要設置光標位置:

vue 輸入電話號碼自動按3-4-4分割功能的實現代碼

修改js如下:

<script> export default { data () { return { mobile: ’’, card: ’’ } }, methods: { inputMobile (e) { this.formatMobile(e) this.mobile = this.$refs.mobile.value }, formatMobile (e) { let val = this.$refs.mobile.value // 不可直接用this.mobile,第一方便提取該方法降低代碼耦合度,第二直接用this.mobile,在輸入漢字時按下shift按鍵會導致無法再輸入和刪除內容 let selStart = this.$refs.mobile.selectionStart // 選中區域左邊界位置 let mobileLen = val.length let value = this.getValue(e, val).substr(0, 11) // 獲取輸入/粘貼內容,并截取前11位 let len = value.length if (len > 3 && len < 8) { value = value.replace(/^(d{3})/g, ’$1 ’) } else if (len >= 8) { value = value.replace(/^(d{3})(d{4})/g, ’$1 $2 ’) } this.$refs.mobile.value = value if (selStart !== mobileLen) { if (selStart === 3) { selStart++ } // 設置光標位置 this.$refs.mobile.selectionStart = this.$refs.mobile.selectionEnd = selStart } }, getValue(e, val) { let value = ’’ if (e.type === ’keyup’) { value = val.replace(/D/g, ’’) } else if (e.type === ’paste’) { // window.clipboardData:IE瀏覽器獲取剪貼板數據對象 // event.clipboardData:Chrome, Firefox, Safari獲取剪貼板數據對象 let clipboardData = event.clipboardData || window.clipboardData; value = clipboardData.getData(’Text’); // 獲取剪貼板text格式的數據 value = value.replace(/D/g, ’’) } return value } } }</script>

未實現:

不允許粘貼非數字內容到輸入框還未實現,改為了提交時校驗,如果有比較好的解決方案望大家提出

到此這篇關于vue 輸入電話號碼自動按3-4-4分割功能的實現代碼的文章就介紹到這了,更多相關vue輸入電話號碼自動分割內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: JavaScript vue
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩av资源网| 综合欧美精品| 亚洲天堂一区二区| 影院欧美亚洲| 欧美一区二区三区久久| 精品网站aaa| 欧美/亚洲一区| 亚洲人成网站在线在线观看| 国产日韩欧美一区| 国内精品美女在线观看| 激情五月色综合国产精品| 久久国产精品99国产| 国产精品美女午夜爽爽| 亚洲天堂成人| 国产欧美高清视频在线| 久久精品中文| 日韩激情av在线| 欧美国产小视频| 蜜臀精品一区二区三区在线观看| 欧美aⅴ一区二区三区视频| 欧美日韩 国产精品| 国产资源在线观看入口av| 丝袜亚洲另类欧美| 精品国产乱码久久久久久樱花| 丁香六月综合| 亚洲黄色中文字幕| 一区二区三区四区在线观看国产日韩| 国语对白精品一区二区| 亚洲一级二级| 国产精品视频一区视频二区| 99久久精品费精品国产| 国产精品一区亚洲| 亚洲国产日韩欧美在线| 日韩一区精品| 国产亚洲欧美日韩在线观看一区二区| 麻豆网站免费在线观看| 亚洲国产专区校园欧美| 国内精品美女在线观看| 日韩高清中文字幕一区二区| 免费av一区| 国产日韩在线观看视频| 国产亚洲永久域名| 精品视频黄色| 亚洲精品成a人ⅴ香蕉片| 日本一区二区免费高清| 美女久久久久久 | 亚洲天堂av资源在线观看| 亚洲欧洲免费| 麻豆精品蜜桃视频网站| 亚洲ww精品| 美腿丝袜在线亚洲一区| 欧美日韩国产一区二区三区不卡 | 国产不卡精品在线| 蜜桃久久av一区| 欧美aa在线观看| 日韩精品五月天| 夜久久久久久| 久久久久免费av| 国产中文字幕一区二区三区| 日韩av不卡一区二区| 亚洲综合国产| 欧美亚洲国产激情| 精品国产午夜肉伦伦影院| 日本va欧美va瓶| 亚洲欧美视频| 99久久精品国产亚洲精品| 欧美国产中文高清| 日韩高清不卡在线| 亚洲精品字幕| 久热综合在线亚洲精品| 欧美中文一区二区| 亚洲天堂资源| 国产成年精品| 精品一区二区三区免费看| 国产精品密蕾丝视频下载| 日韩欧美精品一区二区综合视频| 久久精品福利| 日韩中文一区二区| 国产视频一区在线观看一区免费| 亚洲午夜久久| 久久精品不卡| 成人看片网站| 日本免费久久| 日韩国产在线| 美女久久久久久| 麻豆一区在线| 久久精品999| 国产精品视频一区二区三区四蜜臂| 韩国久久久久久| 久久伊人久久| 国产精品对白久久久久粗| 日韩av不卡在线观看| 在线视频精品| 日韩午夜免费| 亚洲精品麻豆| 欧美在线观看天堂一区二区三区| 日韩二区三区四区| 99精品国产一区二区三区| 久久精品国产99国产精品| 久久精品国产亚洲aⅴ| 亚洲另类黄色| 欧美日韩一视频区二区| 国产色噜噜噜91在线精品| 国产精品乱战久久久| 精品久久一区| 久久精品色播| 日韩高清中文字幕一区二区| 99久久激情| 亚洲一区二区三区高清不卡| 欧美特黄一级| 久久视频精品| 一区在线免费观看| 香蕉国产精品| 蜜桃视频免费观看一区| 日本一区福利在线| 日韩高清一区二区| 日韩一区二区三区在线看| 亚洲精品成a人ⅴ香蕉片| 日本 国产 欧美色综合| 国产欧美自拍一区| 日韩av在线播放中文字幕| 免费看一区二区三区| 夜鲁夜鲁夜鲁视频在线播放| 欧美搞黄网站| 99国产一区| 日本不卡视频在线| 日韩动漫一区| 国产精品手机在线播放| 久久99性xxx老妇胖精品| 精品久久视频| 亚洲天堂一区二区| 激情偷拍久久| 欧美一区=区| 婷婷综合福利| 国产亚洲人成a在线v网站| 国产精品www.| 欧美日韩一区自拍| 精品亚洲成人| 亚洲成人不卡| 欧美精品九九| 一区二区91| 7m精品国产导航在线| 国产精品分类| 日韩一区亚洲二区| 欧美日韩少妇| 日韩毛片一区| 精品久久91| 免费久久精品| 一区二区国产在线| 国产精品手机在线播放| 色欧美自拍视频| 激情综合网五月| 日韩精品一区二区三区免费视频| 国产v综合v| 久久视频精品| 日韩视频一区| 日产欧产美韩系列久久99| 欧美极品一区二区三区| 色婷婷亚洲mv天堂mv在影片| 激情久久中文字幕| 天堂精品久久久久| 精品一区二区三区的国产在线观看| 午夜欧美在线| 亚洲精品在线国产| 黄色精品视频| 99xxxx成人网| 国产精品调教| 亚洲三级欧美| 丝袜诱惑制服诱惑色一区在线观看| 久久精品影视| 久热综合在线亚洲精品| 国产日韩在线观看视频| 韩国三级一区| 亚洲五月综合| 久久精品亚洲| 在线亚洲免费| 精品在线网站观看| 亚洲激精日韩激精欧美精品| 亚洲精品福利电影| 午夜在线观看免费一区| 福利一区二区免费视频| 日本不卡高清视频| 欧美日韩国产亚洲一区| 福利在线一区| 欧美日本一区| 91久久视频| 欧美sm一区| 国产精品久久免费视频| 蜜桃视频在线观看一区二区| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 999久久久免费精品国产| 国产日韩欧美一区二区三区在线观看 | 免费看欧美美女黄的网站| 精品久久中文| 欧美日韩午夜电影网| 欧美专区在线| 婷婷久久一区| 日韩黄色大片网站| 久久久免费人体| 日韩av成人高清|