我正在使用此插件对某个ssn进行屏蔽#https://github.com/igorescobar/jQuery-Mask-Plugin
我需要结果为***-**-****
当用户输入时我希望将前一个字符替换为*
因此,如果我正在打字并且我已经达到了我的第二个角色,它将会是这样的。 *2
我正在尝试使用他们的回调方法。我稍微修改了代码以返回要在onChange方法中返回的字符的pos。
我的下面的代码没有按照我想要的方式工作,任何人都可以看看并帮助解决这个问题。 现在它正在替换错误位置的角色。
var options = {
onComplete: function(cep) {
console.log('CEP Completed!:' + cep);
},
onChange: function(val, pos, e, el, options){
var newVal;
var currentPos = pos;
var lastPos = currentPos -1;
if(lastPos != 0){
newVal = replaceAt(val, lastPos-1, '*');
}else{
newVal = val;
}
el.val( newVal );
}
};
function replaceAt(s, n, t) {
return s.substring(0, n) + t + s.substring(n + 1);
}
$("#ssn").mask("999-99-9999", options);