Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:仅屏蔽“上信用卡号的前12位数字”;“onkeyup”;事件 我想在“onkeyup”事件中将前12位数字屏蔽为*并保留下一位 4位数字 下面的功能是屏蔽前12位数字,但一次全部打开 “onblur”事件 我已经尝试了stackoverflow的所有答案,但没有一个能帮我解决问题_Javascript_Html_Css - Fatal编程技术网

Javascript:仅屏蔽“上信用卡号的前12位数字”;“onkeyup”;事件 我想在“onkeyup”事件中将前12位数字屏蔽为*并保留下一位 4位数字 下面的功能是屏蔽前12位数字,但一次全部打开 “onblur”事件 我已经尝试了stackoverflow的所有答案,但没有一个能帮我解决问题

Javascript:仅屏蔽“上信用卡号的前12位数字”;“onkeyup”;事件 我想在“onkeyup”事件中将前12位数字屏蔽为*并保留下一位 4位数字 下面的功能是屏蔽前12位数字,但一次全部打开 “onblur”事件 我已经尝试了stackoverflow的所有答案,但没有一个能帮我解决问题,javascript,html,css,Javascript,Html,Css,函数格式卡号(元素){ 如果(element.value.length>14){ 变量位置=element.selectionStart; element.value=element.value.replace(/\W/gi',).replace(/^(.{4})(.{4})(.{4})(.*)/,“$1$2$3$4”); if(element.value.length!=19){ 元素。设置选择范围(位置、位置); } } 否则{ element.value=element.value.rep

函数格式卡号(元素){
如果(element.value.length>14){
变量位置=element.selectionStart;
element.value=element.value.replace(/\W/gi',).replace(/^(.{4})(.{4})(.{4})(.*)/,“$1$2$3$4”);
if(element.value.length!=19){
元素。设置选择范围(位置、位置);
}
}
否则{
element.value=element.value.replace(/\W/gi',).replace(/({4})/g,'$1');
}	
}
函数showCardValue(){
document.getElementById(“cardNo”).value=document.getElementById(“cardNoSafe”).value;
}
函数hideCardValue(val){
document.getElementById(“cardNoSafe”).value=val;
var len=val.length;
如果(len>=14){
常量regex=/\d{4}(?=\d{1})/g;
常量substr=“****”;
document.getElementById(“cardNo”).value=val.replace(regex,substr);
}
}

您可以将输入拆分为4个单独的输入,而每个输入都定义为密码(最后一个是纯文本)

这样,您就可以隐藏大部分数字,只显示最后4位数字

当然,您需要使用一些css来美化它:)

函数moveToNext(当前,下一个){
if($(curr.val().length==4){
next.focus();
}
}

我无法为您提供完整的解决方案,但这应该足以让您将其适应您自己的工作,包括您要求的行为:)

函数hideCardValue(元素){
var tmpval=element.value;

如果(tmpval.length非常感谢您的回答,但我想改用单输入框。这样,我认为您无法从剪贴板粘贴完整的数字。谢谢,伙计,但我正在寻找完整的解决方案,部分解决方案我已经找到了,但这还不够。哦,我想您只需要这一部分。实现这一点,您的问题到底在哪里也许我可以给你多一点帮助你的答案是只有在输入4位数字后才屏蔽,我想要的是每一位数字在输入时都应该屏蔽,直到长度12,其余的都应该可见。是的,这更好,尽管formatCardNumber()此代码段的函数失败,但我可以处理,非常感谢您的时间和帮助如果我能提供帮助,总是很高兴,享受伴侣:)