程序中需要根据ChcekBox的选中与否来决定asp:imagebutton的隐藏与显示,需要在脚本中进行操作,所以我给CheckBoxh填加了onclick="CheckChange(this,'imgckl1')" 
同时在母板业脚本中加了
function CheckChange(ckValue,imgValue)
{    
    if (ckValue.checked == true)
    {
  document.getElementById(imgValue).visible = true;
    }
    else
    {
  document.getElementById(imgValue).visible = false;
    }
}
但是总是报
Microsoft JScript runtime error: 'document.getElementById(...)' is null or not an object应该怎么控制asp:imagebutton的隐藏与显示?

解决方案 »

  1.   

    你要弄清楚,加了runat="server"以后的控件生成页以后ID是会改变的,最好弄清楚它的实际ID,可以在生成页以后打开网页源代码查看!
      

  2.   

    document.getElementById(imgValue).visible = none;
      

  3.   

    http://topic.csdn.net/u/20080822/16/108fe45c-e87e-4988-a8cf-16b1d224dee5.html离开公司时留给公司的十句话 与大家分享  
      

  4.   

    document.getElementById(imgValue).style.display="none";  或 ="block"
      

  5.   

    写错了。是这样
    document.getElementById("ImageButton1").style.display = "none";
      

  6.   

    document.getElementById('控件ID').visible = none;
      

  7.   

    document.getElementById 你给的ID不正确
    你把页面运行起来,查看源文件,找到那个控件的ID
    asp.net 解析成html的时候 ID会变的
      

  8.   

    试试看这个:
    function CheckChange(ckValue,imgValue) 
    {    
        if (ckValue.checked == true) 
        { 
      document.getElementById("<%=imgckl1.ClientID%>").visible = true; 
        } 
        else 
        { 
      document.getElementById("<%=imgckl1.ClientID%>").visible = false; 
        } 
      

  9.   

    可以了,谢谢各位!
                if (ckValue.checked == true)
        {
            document.getElementById(imgValue).style.display = "block";         
        }
        else
        {
            document.getElementById(imgValue).style.display = "none";   
        }