num1 = parseFloat(第一个文本框名称.value);
num2 = parseFloat(第二个文本框名称.value);
if (val!=''+num)
alert(两个文本框的内容必须是数字);
}
else{
第三个文本框名称.value=num1*num2;
}
num2 = parseFloat(第二个文本框名称.value);
if (val!=''+num)
alert(两个文本框的内容必须是数字);
}
else{
第三个文本框名称.value=num1*num2;
}
<....name = text1 onchange = mathe(this)>
<.. name=text2....>
<..name = text3....>
mathe(from)
{
from[0].text3.value = from[0].text1.value * from[0].text2.value;}
<.. name=text2....>
<..name = text3....>
mathe(from)
{
num1 = parseFloat(from[0].text1.value);
num2 = parseFloat(from[0].text2.value);
if (val!=''+num)
alert(两个文本框的内容必须是数字);
}
else{
from[0].text3.value =num1*num2;
}
}
你改成这样就行了,要想相乘必须转成数字型,如果不是数字型就提示用户。
我试了好象不行。onchchange事件中传过去的是text,而不是from.所以用from会出错.要如何传from.请指教.
<BODY>
<form name=formName>
<input name = text1 onchange = mathe(document.formName)>
<input name=text2 onchange = mathe(document.formName)>
<input name=text3>
</form>
<SCRIPT LANGUAGE="JavaScript">
<!--
function mathe(destForm)
{
num1 = parseFloat(destForm.text1.value);
num2 = parseFloat(destForm.text2.value);
if (isNaN(num1)|| isNaN(num2))
return;
destForm.text3.value =num1*num2;
}
//-->
</SCRIPT>
</BODY>
</HTML>form是保留字,不要用来做变量名。