function formatAcc(obj){
var realV=document.getElementById("AccountNumber");
realV.value=obj.value.replace(/\s*/g, "");
document.getElementById("ACCNO").value=realV.value;
var str=realV.value;
var temp="";
for(var i=0;i<str.length;i++){
temp=temp+str.substring(i,i+1);
if(i<3&&(i+1)%3==0&&i!=(str.length-1)){
temp=temp+" ";
}
if(i>3&&(i+1)%4==0&&i!=(str.length-1)){
temp=temp+" ";
}
}
obj.value=temp;
}我想输出以下格式123 4567 4567 4567 4567 ……可是上面代码输出是这样的,怎样修改代码123 45678 4567 4567 4567 ……
var realV=document.getElementById("AccountNumber");
realV.value=obj.value.replace(/\s*/g, "");
document.getElementById("ACCNO").value=realV.value;
var str=realV.value;
var temp="";
for(var i=0;i<str.length;i++){
temp=temp+str.substring(i,i+1);
if(i<3&&(i+1)%3==0&&i!=(str.length-1)){
temp=temp+" ";
}
if(i>3&&(i+1)%4==0&&i!=(str.length-1)){
temp=temp+" ";
}
}
obj.value=temp;
}我想输出以下格式123 4567 4567 4567 4567 ……可是上面代码输出是这样的,怎样修改代码123 45678 4567 4567 4567 ……
<!--
function formatAcc(obj){
var realV=document.getElementById("AccountNumber");
realV.value=obj.value.replace(/\s*/g, "");
document.getElementById("ACCNO").value=realV.value;
var str=realV.value;
var temp="";
for(var i=0;i<str.length;i++){
temp=temp+str.substring(i,i+1);
if(i<3&&(i+1)%3==0&&i!=(str.length-1)){
temp=temp+" ";
}
if(i>3&&(i-3+1)%4==0&&i!=(str.length-1)){
temp=temp+" ";
}
}
obj.value=temp;
}
//-->
</script>
<body>
<input type="text" id="AccountNumber" value="1234567456745674567" size="30"><br/>
<input type="text" id="ACCNO" value="" size="30"><br/>
<input type="button" value="Click" onclick="formatAcc(document.getElementById('AccountNumber'))"/>
</body>
var realV = document.getElementById("AccountNumber");
realV.value = obj.value.replace(/\s*/g, "");
document.getElementById("ACCNO").value = realV.value;
var arr = realV.value.split('');
var str = '';
if (arr.length < 3) str = arr.join('');
else {
str = arr.slice(0,3).join('');
for (var i = 2; i < arr.length; i = i + 4) str += ' ' + arr.slice(i, i+4).join('');
}
obj.value = str;
}
回答经测试完全可以!
function formatAcc(obj) {
var realV = document.getElementById("AccountNumber");
realV.value = obj.value.replace(/\s*/g, "");
document.getElementById("ACCNO").value = realV.value;
var arr = realV.value.split('');
var str = '';
if (arr.length < 3) str = arr.join('');
else {
str = arr.slice(0,3).join('');
for (var i = 3; i < arr.length; i = i + 4) str += ' ' + arr.slice(i, i+4).join('');
//上面i初始值弄错了,改为i=3应该可以了
}
obj.value = str;
}