我在一个页面有几个文本框  当填入第一个数后 后面的文本框自动填写   我的代码为
  if((jianshu>0)&&(jianshu <= hwjs )) 
  {
     document.input1.tiji.value = Math.round(Math.floor(( dtj *10000)/10))/1000 * jianshu ;
 document.input1.zhongliang.value = Math.round(Math.floor(( dzl *10000)/10))/1000 * jianshu ;
 document.input1.yunfei.value = Math.round(Math.floor(( dyf *10000)/10))/1000 * jianshu ;
 document.input1.bxe.value = Math.round(Math.floor(( dbxe *10000)/10))/1000 * jianshu ;
  }      
  else
  {
     alert("你输入的件数不符合规则,请重新输入");
     document.input1.tiji.value = "" ;
 document.input1.zhongliang.value = "" ;
 document.input1.yunfei.value = "" ;
 document.input1.bxe.value = "" ;  
 //return false;
  }   
hwjs =34
 但是在输入jianshu = 1、2、3 、10---34时  满足 if((jianshu>0)&&(jianshu <= hwjs ))  执行下面的代码
但是输入jianshu = 4、5、6、7、8、9 的时候 却是执行了alert("你输入的件数不符合规则,请重新输入");  不知道为何?
高手赐教?

解决方案 »

  1.   

         var jianshu = document.input1.jianshu.value ;
     var hwjs = document.input1.hwjs.value;
     var ztiji = document.input1.ztiji.value;
     var zongzl = document.input1.zongzl.value;
     var zongyf = document.input1.zongyf.value;
     var zbxe = document.input1.zbxe.value;
     var dtj  =  ztiji / hwjs;
     var dzl  =  zongzl / hwjs;
     var dyf  =  zongyf / hwjs;
     var dbxe =  zbxe / hwjs;
      

  2.   

    首先,你的jianshu 是否是全局变量,值还原没?其次,你用jianshu  = parseInt(jianshu , 10) 这样的话你10后面的数估计也通过不了
      

  3.   

    楼上说的对 你要把jianshu转换成整形 就是 jianshu = parseInt(jianshu)
    不然你在判断的时候if((jianshu>0)&&(jianshu <= hwjs )) 会把jianshu当成字符串来处理
      

  4.   

    hwjs = 34?
    不转换 正好是在4的时候不通过 
    "4" < hwjs 就是假了