vue中Element-ui 輸入銀行賬號每四位加一個(gè)空格的實(shí)現(xiàn)代碼
一、問題描述:
我們在輸入銀行賬號會(huì)設(shè)置每四位添加一個(gè)空格,輸入金額,每三位添加一個(gè)空格。那么,在vue,element-ui 組件中,如何實(shí)現(xiàn)呢?
二、效果圖:

三、實(shí)現(xiàn)代碼:
<el-table-column prop="account" label="銀行賬號">
<template slot-scope="scope">
<el-input type="text" maxlength="23" v-model="scope.row.account" placeholder="請輸入銀行賬號"
@change="validateNum(scope.$index)"></el-input>
</template>
</el-table-column>
// 輸入銀行卡號
validateNum (index) {
this.setNum(this.supplierObjs.supplierBankAccount, index)
},
// 設(shè)置銀行卡號,每四位添加一個(gè)空格
setNum (data, index) {
data.forEach((element, i) => {
element.account = element.account.replace(/\s/g, '').replace(/[^\d]/g, '').replace(/(\d{4})(?=\d)/g, '$1 ')
this.$set(element, 'account', element.account)
})
},
四、思路:
1、在組件的change事件中添加實(shí)現(xiàn)方法(因?yàn)槲覀兊臉I(yè)務(wù)需求是可以添加多個(gè)銀行卡號,所以用index做了區(qū)分),取出每行的值;
2、用element.account = element.account.replace(/\s/g, '').replace(/[^\d]/g, '').replace(/(\d{4})(?=\d)/g, '$1 '),類似正則表達(dá)式的方法對數(shù)據(jù)進(jìn)行處理;
3、this.$set(element, 'account', element.account),set方法,將處理后的值set到model中,處理后的數(shù)據(jù)就保存到model中了。
實(shí)現(xiàn)起來也非常簡單,但是因?yàn)閑lement-UI沒有提供輸入設(shè)置的方法,所以需要自己根據(jù)需求完善一下。
補(bǔ)充:下面看下js 填寫銀行卡號時(shí),每4個(gè)數(shù)字用空格隔開
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script src="js/jQuery.js"></script>
</head>
<body>
<script>
var num = 0;
function inputAccount(){
var str = $('#bankCard').val();
var elem = document.getElementById("bankCard");
console.log(elem);
if(str.length > num){
var c = str.replace(/\s/g, "");
if(str != "" && c.length > 4 && c.length % 4 == 1){
$('#bankCard').val(str.substring(0, str.length - 1)+ " " + str.substring(str.length - 1, str.length));
}
}
if(elem.setSelectionRange){//W3C
setTimeout(function(){
elem.setSelectionRange(elem.value.length,elem.value.length);
elem.focus();
},0);
}else if(elem.createTextRange){//IE
var textRange=elem.createTextRange();
textRange.moveStart("character",elem.value.length);
textRange.moveEnd("character",0);
textRange.select();
}
num = str.length;
}
</script>
<input type="text" name="" oninput="inputAccount()" id="bankCard" />
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script src="js/jQuery.js"></script>
</head>
<body>
<input type="text" name="" id="box" />
<script>
$(function(){
$('#box').keyup(function(){
var value=$(this).val().replace(/\s/g,'').replace(/(\d{4})(?=\d)/g,"$1 ");
$(this).val(value)
})
})
</script>
</body>
</html>
總結(jié)
以上所述是小編給大家介紹的vue中Element-ui 輸入銀行賬號每四位加一個(gè)空格的實(shí)現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- vue+element-ui中form輸入框無法輸入問題的解決方法
- 詳解Vue3.0中ElementPlus<input輸入框自動(dòng)獲取焦點(diǎn)>
- element input輸入框自動(dòng)獲取焦點(diǎn)的實(shí)現(xiàn)
- Vue ElementUI實(shí)現(xiàn):限制輸入框只能輸入正整數(shù)的問題
- Element Input輸入框的使用方法
- vue element-ui實(shí)現(xiàn)input輸入框金額數(shù)字添加千分位
- Vue?elementUI表單嵌套表格并對每行進(jìn)行校驗(yàn)詳解
- element表單驗(yàn)證如何清除校驗(yàn)提示語
- Vue Element校驗(yàn)validate的實(shí)例
- element必填校驗(yàn)輸入空格問題修改正則表達(dá)式、請求攔截器實(shí)現(xiàn)所有輸入框去除首尾空格(推薦)
相關(guān)文章
Vue下拉框值變動(dòng)事件傳多個(gè)參數(shù)方式
這篇文章主要介紹了Vue下拉框值變動(dòng)事件傳多個(gè)參數(shù)方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
vue-autoui自匹配webapi的UI控件的實(shí)現(xiàn)
這篇文章主要介紹了vue-autoui自匹配webapi的UI控件的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
vue?Router(v3.x)?路由傳參的三種方式場景分析
vue?路由傳參的使用場景一般都是應(yīng)用在父路由跳轉(zhuǎn)到子路由時(shí),攜帶參數(shù)跳轉(zhuǎn),傳參方式可劃分為?params?傳參和?query?傳參,而?params?傳參又可分為在?url?中顯示參數(shù)和不顯示參數(shù)兩種方式,這就是vue路由傳參的三種方式,感興趣的朋友跟隨小編一起看看吧2023-07-07
Vue.extend 編程式插入組件的實(shí)現(xiàn)
這篇文章主要介紹了Vue.extend 編程式插入組件的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
在vue中給列表中的奇數(shù)行添加class的實(shí)現(xiàn)方法
今天小編就為大家分享一篇在vue中給列表中的奇數(shù)行添加class的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09
Vue-cli Eslint在vscode里代碼自動(dòng)格式化的方法
本篇文章主要介紹了Vue-cli Eslint在vscode里代碼自動(dòng)格式化的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-02-02
Vue使用vue-cli創(chuàng)建項(xiàng)目
這篇文章主要介紹了Vue使用vue-cli創(chuàng)建項(xiàng)目,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09

