<html>
  <head>
    <script type="text/javascript">
      function account(operator)
      {
        var a=document.getElementById("text1").value;
        var b=document.getElementById("text2").value;
 
        if(!isNaN(a) && !isNaN(b))
        {
           if(a==""||b=="")
           {
             alert("您没有输入数值")
             return;
           }
        switch(operator)
        {
           case "+":
             document.getElementById('result').innerHTML=parseFloat(a)+parseFloat(b);
           break;
           case "-":
             document.getElementById('result').innerHTML=parseFloat(a)-parseFloat(b);
           break;
           case "*":
             document.getElementById('result').innerHTML=parseFloat(a)*parseFloat(b);
           break;
           case "/":
             if(parseFloat(b)==0)
             {
               alert("除数不能为0")
               return;
             }
             else
             {
               document.getElementById('result').innerHTML=parseFloat(a)/parseFloat(b);
             }
            break;
          }
        }
        else
        {
         [color=#FF00FF] if(isNaN(a))

          { 
            document.getElementById("label1").innerHTML = "值为1";
            
          }
          else if(isNaN(b))
          { 
            document.getElementById("label2").innerHTML = "值为2";
           
          }[/color]        } 
      }
       </script>
    </head>
    <body>
      <form align="center">
         <table align="center" border="1" bordercolor="#FF0000" wridth="90px">
          <tr>
            <td>
            <center><b><h1>四则计算器</h1></b></center>
            </td>
          </tr>
          <tr>
            <td>
            <input type="text"  id="text1" />
            <label id="label1">输入数字</label>
            </td>
          </tr>
          <tr>
            <td>
            <input type="text" id="text2" />
            <label id="label2">输入数字</label>
            </td>
          </tr>
          <tr>
            <td>
            <input type="hidden" id="hidden" value="您输入值非法" />
            <input type="button" name="add"  value=" + " onClick="account('+')">
            <input type="button" name="sub"  value=" - " onClick="account('-')">
            <input type="button" name="mul"  value=" * " onClick="account('*')">
            <input type="button" name="div"  value=" / " onClick="account('/')">
            </td>
          </tr>
          <tr>
            <td>
             &nbsp;<div id="result" align="center"></div>
             <input type="hidden" value="您输入了非数字" />
            </td>
          </tr>
          <tr>
            <td>
            <input type="reset" id="Submit" value="重新输入"  align="center"/>
            </td>
          </tr>
         </table>
     </form>
  </body>
</html>
想让在输入的不是数字的时候 text后边那个label的“输入数字“就变成”输入了非数字“ 等再重新输入正确的时候 提示就没了 又显示为”输入数字“开始我是用document.getElementById()调用一个hidden里边的值 但是总是不成功  然后直接用innerHTML修改后 等再重新输入的时候 显示的依旧是”输入了非法数字“ 
这个应该怎么修改

解决方案 »

  1.   

    哦 我错了 hidden里的值可以调用 可是 当我重新输入正确的值的时候 那个已经调用出来的hidden值仍旧在那 怎么让在重新输入正确的时候不显示呢
    <html>
      <head>
        <script type="text/javascript">
          function account(operator)
          {
            var a=document.getElementById("text1").value;
            var b=document.getElementById("text2").value;
     
            if(!isNaN(a) && !isNaN(b))
            {
               if(a==""||b=="")
               {
                 alert("您没有输入数值")
                 return;
               }
            switch(operator)
            {
               case "+":
                 document.getElementById('result').innerHTML=parseFloat(a)+parseFloat(b);
               break;
               case "-":
                 document.getElementById('result').innerHTML=parseFloat(a)-parseFloat(b);
               break;
               case "*":
                 document.getElementById('result').innerHTML=parseFloat(a)*parseFloat(b);
               break;
               case "/":
                 if(parseFloat(b)==0)
                 {
                   alert("除数不能为0")
                   return;
                 }
                 else
                 {
                   document.getElementById('result').innerHTML=parseFloat(a)/parseFloat(b);
                 }
                break;
              }
            }
            else
            {
              if(isNaN(a))
              { 
                document.getElementById("label1").innerHTML = document.getElementById("hidden").value;
                
              }
              else if(isNaN(b))
              { 
                document.getElementById("label2").innerHTML = document.getElementById("hidden").value;
               
              }
            } 
          }
           </script>
        </head>
        <body>
          <form align="center">
             <table align="center" border="1" bordercolor="#FF0000" wridth="90px">
              <tr>
                <td>
                <center><b><h1>四则计算器</h1></b></center>
                </td>
              </tr>
              <tr>
                <td>
                <input type="text"  id="text1" />
                <label id="label1">输入数字</label>
                </td>
              </tr>
              <tr>
                <td>
                <input type="text" id="text2" />
                <label id="label2">输入数字</label>
                <input type="hidden" id="hidden" value="输入错误" >
                </td>
              </tr>
              <tr>
                <td>
                <input type="hidden" id="hidden" value="您输入值非法" />
                <input type="button" name="add"  value=" + " onClick="account('+')">
                <input type="button" name="sub"  value=" - " onClick="account('-')">
                <input type="button" name="mul"  value=" * " onClick="account('*')">
                <input type="button" name="div"  value=" / " onClick="account('/')">
                </td>
              </tr>
              <tr>
                <td>
                 &nbsp;<div id="result" align="center"></div>
                 <input type="hidden" value="您输入了非数字" />
                </td>
              </tr>
              <tr>
                <td>
                <input type="reset" id="Submit" value="重新输入"  align="center"/>
                </td>
              </tr>
             </table>
         </form>
      </body>
    </html>
      

  2.   

    正确的时候把 label1,label2的内容改回去呗。不过还是建议你把对于数据的检验单独做成一个函数,
    并在输入的onchange或者是onblur的时候进行检验。