你会不会自己找到相应的checkbox和textbox,如果自己会找就省了这步,然后给checkbox加入如下属性:mycheckbox.Attributes.Add("onclick","if(this.checked)document.all."+mytextbox.ClientID+".disabled=true");

解决方案 »

  1.   

    在ItemDataBound事件里为CheckBox写上相应的JavaScript
      

  2.   

    try
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
      if(e.Item.ItemIndex>=0)
      {
         CheckBox mycheckbox=(CheckBox)e.Item.FindControl("checkboxid");
         TextBox mytextbox=(TextBox)e.Item.FindControl("textboxid");
         mycheckbox.Attributes.Add("onclick","if(this.checked)document.all."+mytextbox.ClientID+".disabled=true");
       } 
    }
      

  3.   

    ameng_2002:这个是放在什么地方呢?
      

  4.   

    把ameng_2002的代码翻译成VB的:  if (e.Item.ItemIndex>=0) Then    Dim mycheckbox As CheckBox
        Dim mytextbox As TextBox
        mycheckbox = CType(e.Item.FindControl("checkboxid"),CheckBox) 
        mytextbox = CType(e.Item.FindControl("textboxid"),TextBox)
        mycheckbox.Attributes.Add("onclick","if(this.checked)document.all."+mytextbox.ClientID+".disabled=true");  End If
      

  5.   

    为什么在mycheckbox.attributes.add...这一句出错,说“BC30037 字符无效”?
      

  6.   

    已解决。谢谢ameng_2002&zzhuz!