代码在这里正常工作..但根据问题,它实际上无法正常工作我想验证 00-00-00-0000 格式的数字/字母文本..但此代码仅在第一次填充值然后它的工作正确但在明文之后填充值验证工作不正常。
var v = "0";
var v1 = "0";
var v2 = "0";
function myFunction() {
var x = document.getElementById("vname");
x.value = x.value.toUpperCase();
var add = "-";
var string = x.value;
var str = "";
var len = string.length;
if (len > 13) {
x.value = string.substring(0, 13);
}
if (len > 2 && v == "0") {
var str = x.value;
x.value = setCharAt(str, 2, '-');
v = "1";
}
if (len > 5 && v1 == "0") {
var str = x.value;
x.value = setCharAt(str, 5, '-');
v1 = "1";
}
if (len > 8 && v2 == "0") {
var str = x.value;
x.value = setCharAt(str, 8, '-');
v2 = "1";
}
}
function setCharAt(str, index, chr) {
if (index > str.length - 1) return str;
return str.substr(0, index) + chr + str.substr(index + 1);
}
<input type="text" oninput="myFunction()" id="vname" />
慕容3067478
相关分类