<input name="f1" type="text" id="f1" value="5" size="15" onblur="func()">
  <br>
  <br>  <input name="f2" type="text" id="f2" value="10" size="15" onblur="func()">
  <br>
  <br>  <input name="f3" type="text" id="f3" value="0" size="15" onblur="func()">
  <br>
  <br>
 
  <input name="f4" type="text" id="f4" value="0" size="15" onblur="func()">
  <br>
  <br>  <input name="f5" type="text" id="f5" value="0" size="15" onblur="func()">
  <font color="#FF0000"><strong><div id="div1">15</div></strong></font>
  function func(){
var f1=document.getElementById("f1").value
var f2=document.getElementById("f2").value
...
var f5=document.getElementById("f5").value
var total=0;
if(f1 !='' || f2!='' || f3!='' || f4!='' || f5!=''){
    total=f1+f2+f3+f4+f5
document.getElementById("div1").innerText=total
   }}

解决方案 »

  1.   

    <script language="javascript" type="text/javascript">
    function sum(){
    var v1=isNaN(parseInt(f1.value))?0:parseInt(f1.value,10);
    var v2=isNaN(parseInt(f1.value))?0:parseInt(f2.value,10);
    var v3=isNaN(parseInt(f1.value))?0:parseInt(f3.value,10);
    var v4=isNaN(parseInt(f1.value))?0:parseInt(f4.value,10);
    var v5=isNaN(parseInt(f1.value))?0:parseInt(f5.value,10);
    f6.value=v1+v2+v3+v4+v5;
    alert(isNaN(this.value) + this.value);
    }
    </script>
    <input name="f1" type="text" value="0" size="15" onblur="sum();">
    <br><br>
    <input name="f2" type="text" value="0" size="15" onblur="sum();">
    <br><br>
    <input name="f3" type="text" value="0" size="15" onblur="sum();">
    <br><br> 
    <input name="f4" type="text" value="0" size="15" onblur="sum();">
    <br><br>
    <input name="f5" type="text" value="0" size="15" onblur="sum();">
    <br><br>
    <input name="f6" type="text" value="0" size="15">
      

  2.   

    去掉“alert(isNaN(this.value) + this.value);”这一句
    这是调试用的
      

  3.   

    楼上的大哥们的能实现,但是如何一个框里面的分,没有写,会提示:Nan ,是什么意思.能默认是0吗?怎么做?