我在页面定义一个控件 id="cost",然后再js中用document.getElementById()获取,当用document.getElementById(id)获取的时候是没有问题的,但是用document.getElementById("cost")获取的时候,就报缺少对象错误,请各位帮忙看下

解决方案 »

  1.   

    "当用document.getElementById(id)获取的时候是没有问题的,但是用document.getElementById("cost")获取的时候,就报缺少对象错误"感觉你没有描述清楚样。
      

  2.   

    就是当我把空间id做为参数传递进去,然后用document.getElementById(id)没有问题,但是直接用document.getElementById("cost")就报错了
      

  3.   

    很奇怪的问题,你的 cost 是不是唯一的啊?
      

  4.   

    cost肯定是唯一的,我用的是ie8
      

  5.   

    保证你页面js代码运行到document.getElementById("cost")的时候,控件id="cost"已经加载完毕。否则就会报缺少对象的错误信息
      

  6.   

    我把简单代码贴出来吧
    function whenqtyvaluechange(id){ 
                   var qty=document.getElementById(id).value;
                   if(isNaN(qty)){
                      alert("必须填写数字");
                   }else if(qty<=0){
                      alert("值必须大于0");
                      document.getElementById(id).value="";
                   }
                   document.getElementById(id);//这个没问题
                     alert("1111");
                   document.getElementById("cost");//这个有问题
                     alert("22222");
          }
    在页面中id="cost"
      

  7.   

    你把ID打出来看下。是不是 "cost"
      

  8.   


    window.onload=function(){alert(document.getElementById("cost"));}
    //把上面这句话放到页面上看是否有问题?
      

  9.   

    你确定是把代码放在页面代码 id="cost"的下面吗?
      

  10.   

    是不是在adf框架下这个就有问题了?我单独做了一个页面就没这个问题了
      

  11.   

    这段js貌似没有问题呀,测试代码如下
    输入数字,移开焦点,即弹出了1111也弹出了22222
    莫非是调用的地方出了问题?
    求lz的调用部分代码 <input id="cost" onchange="whenqtyvaluechange('cost')"></input>
      <SCRIPT LANGUAGE="JavaScript">
      <!--
    function whenqtyvaluechange(id){  
      var qty=document.getElementById(id).value;
      if(isNaN(qty)){
      alert("必须填写数字");
      }else if(qty<=0){
      alert("值必须大于0");
      document.getElementById(id).value="";
      }
      document.getElementById(id); 
      alert("1111");//测试弹出了这个
      document.getElementById("cost");
      alert("22222");//测试也弹出了这个
    }  //-->
      </SCRIPT>
      

  12.   

    我测试的时候1111也弹出了,但是2222不能,而且报错缺少对象
    反正我单独写个页面测试是没问题的,但在adf下就出错了
      

  13.   

    谢谢各位,已经解决了
    我在这个控件的前面加了个form,所以获得的id的值就变成了editform:_id3:0:cost
    而不是cost
    所以把分给12楼的朋友