代码错在那?~
静花水月冰 2006-09-06 03:22:38 两个文本框输入数值后,相乘,如果不等于0,就把积转成10位的字符串,不足10位就补" "空格。
前面写的补空格函数好像没什么问题,主要是后面alert(strjeA)弹出“undefined”,咋调用后返回的值不对?
<html>
<head>
<script language="javascript">
function formatStr(StrNum,NumLen)
{ var StrLen,i,StrNull="";
StrLen=NumLen - StrNum.length;
for (i=1;i<=StrLen;i++)
{StrNull=StrNull +" ";}
formatStr=StrNull + StrNum;
alert(formatStr);
}
function getCharArray(num)
{ if (num==1) {sl=document.form1.sl1.value; dj=document.form1.dj1.value;}
if (num==2) {sl=document.form1.sl2.value; dj=document.form1.dj2.value;}
var je,strjeA;
je=parseFloat(sl*dj).toFixed(2);
if (je!=0) {strjeA=formatStr(je,10); alert(strjeA);}
}
</script>
</head>
<body>
<form name="form1">
<input name="sl1" type="text" size="8" maxlength="7" onblur="getCharArray(1)" />
<input name="dj1" type="text" size="8" maxlength="7" onblur="getCharArray(1)" /><br>
<input name="sl2" type="text" size="8" maxlength="7" onblur="getCharArray(2)" />
<input name="dj2" type="text" size="8" maxlength="7" onblur="getCharArray(2)" />
</form>
</body>
</html>