解決replace格式替換後游標定位問題

2022-04-05 00:55:10 字數 950 閱讀 6945

場景:格式化銀行卡444格式 手機號344格式 身份證號684格式 校驗資料格式,replace後游標定位錯亂 或游標一直定位在最後

解決,只針對input,**用的vue:

獲取游標位置:

getcursorpos(obj)  

else

if (obj.selectionstart || obj.selectionstart == '0') //

firefox/safari/chrome/opera support

caretpos =obj.selectionend;

return

caretpos;

},

設定游標位置:

setcursorpos(obj, pos)  

else

if (obj.createtextrange)

}

使用(obj當前input):

/*

-----------------

*/

let obj = $event.target;

var pos = this.getcursorpos(obj); //

儲存原始游標位置

var temp = obj.value; //

儲存原始值

obj.value = obj.value.replace(/\d/g, '').replace(/....(?!$)/g, '$& ');

this.defaultval =obj.value;

pos = pos - (temp.length - obj.value.length); //

當前游標位置

this.setcursorpos(obj, pos); //

設定游標

/*-----------------

*/

mysql 替換函式replace

mysql 替換字串的實現方法 mysql中replace函式直接替換mysql資料庫中某字段中的特定字串,不再需要自己寫函式去替換,用起來非常的方便。mysql 替換函式replace update table name set field name replace field name from...

Sqlserver替換函式Replace

sqlserver中replace函式 實現欄位中某個字串批量替換。注意 強烈建議替換前備份資料庫以免發生災難性後果。update article set content replace content www.abc.com www bbb.com 說明 將content欄位中的www.abc.c...

REPLACE(替換字段內容)

語法 replace str1 with str2 into c length l abap 4 搜尋字段 c 中模式 str1 前 l 個位置第一 次出現的地 方。如果未 指定長度,按全長度搜 索模式 str1 然後,語句 將模式 str1 在字段 c 中第一次出 現的位置用 字串 str2 替換...