<HTML> 
<HEAD> 
<META http-equiv=Content-Type content="text/html; charset=gb2312"> 
<SCRIPT LANGUAGE=javascript> 
function sumNum() 

   var number1 = parseInt(num1.value); 
    var number2 = parseInt(num2.value); 
var number3=number1 + number2; 
sum.value = number3;
for(var i=number2;i<=number3;i++){
mx.innerHTML +=i+' '+' '; 
}} 
</SCRIPT> 
</HEAD> 
<body> 
<INPUT TYPE="text" id="num1" > 
<INPUT TYPE="text" id="num2" onpropertychange="sumNum()"> 
<INPUT TYPE="text" id="sum" > 
<INPUT TYPE="text" id="mx" > 
</BODY> 
</HTML> 
请问上面的i值怎么不能显示啊?

解决方案 »

  1.   

    貌似你没写document.getElementById  单单写num1.value可以获取的到值吗???
      

  2.   

    num1,num2和sum都可以正常显示的啊。现在就是MX有问题。
      

  3.   


    function   sumNum()   
    {   
          var   number1   =   parseInt(document.getElementById("num1").value);   
            var   number2   =   parseInt(document.getElementById("num2").value);   
    var   number3=number1   +   number2;   
    document.getElementById("sum").value   =   number3; 
    for(var   i=number2;i <=number3;i++){ 
    document.getElementById("mx").innerHTML   +=i+'   '+'   ';   
    } }   <INPUT   TYPE="text"   id="num1"   >   
    <INPUT   TYPE="text"   id="num2"   onblur="sumNum()">   
    <INPUT   TYPE="text"   id="sum"   >   
    <font   id="mx"   >   
      

  4.   

    onpropertychange这个方法时改变num2的属性才调用sumNumonchange这个方法时改变num2中的值调用sumNum(也就是向num2文本框输入值调用)你是不是  方法用错误了  没有调用sumNum方法啊你在sumNum方法中alert("调用sumNum方法");一下看看
      

  5.   

    我这边调试正常的啊!  你要干嘛!!
    <HTML>   
    <HEAD>   
    <META   http-equiv=Content-Type   content="text/html;   charset=gb2312">   
    <SCRIPT   LANGUAGE=javascript> 
      
    function   sumNum()   
    {   
          var   number1   =   parseInt(document.getElementById("num1").value);   
            var   number2   =   parseInt(document.getElementById("num2").value);   
    var   number3=number1   +   number2;   
    document.getElementById("sum").value   =   number3; 
    for(var   i=number2;i <=number3;i++){ 
    document.getElementById("mx").innerHTML   +=i+'   '+'   ';   
    } }   
    </SCRIPT>   
    </HEAD>   
    <body>   
    <INPUT   TYPE="text"   id="num1"   >   
    <INPUT   TYPE="text"   id="num2"   onblur="sumNum()">   
    <INPUT   TYPE="text"   id="sum"   >   
    <font   id="mx"   >   
    </BODY>   
    </HTML>   
      

  6.   

    现在的问题出在
    for(var   i=number2;i <=number3;i++){ 
    mx.innerHTML   +=i+'   '+'   ';   
    这一段
      

  7.   

    我来系统的回答一下
    1 一楼的貌似你没写document.getElementById     单单写num1.value可以获取的到值吗???
    在ie中 元素的id可以直接使用表示元素对象(个人建议不要那么使用)
    2 楼主的function   sumNum()   
    {   最好加上一句 if(event.propertyName != "value"){return;}  如下
    function   sumNum()
    {
    if(event.propertyName != "value"){return;}
    var   number1   =   parseInt(num1.value);   
    var   number2   =   parseInt(num2.value);   
    // other code
    3楼主的 mx.innerHTML   +=i+'   '+'   ';   
    mx是<INPUT   TYPE="text"   id="mx"   >   
    应该改成mx.value吧
    4 关于三楼的在函数里面每次都document.getElementById
    将这些定义成全局变量效率是否更好些?
    <font   id="mx"   >   
    少了</font>
      

  8.   

    比如number1是34,  number是2,现在sum显示36没有问题。我还要在mx里显示34  35  36
      

  9.   

    感谢cooljelly ,现在你的有个问题,第一次显示后,不刷新,我修改number1的值后,显示的结果是跟在第一次的结果后面的,请问怎么修改?