日期:2014-05-18  浏览次数:20465 次

.net2005问题求教,在线等,一有正确答案立刻结贴,顶者有分
--后台代码
for   (int   i   =   0;   i   <   gvShow.Rows.Count;   i++)
{
    CheckBox   cb   =   (CheckBox)gvShow.Rows[i].Cells[1].FindControl( "CheckBox1 ");
    if   (cb.Checked)
    {
        Response.Write( " <script> onload=function(){alert( ' "   +   i.ToString()+   " ');} </script> ");
      }
}
--前台gridview
<asp:TemplateField>
          <EditItemTemplate>
                    <asp:CheckBox   ID= "CheckBox1 "   runat= "server "   />
          </EditItemTemplate>
          <ItemTemplate>
                      <asp:CheckBox   ID= "CheckBox1 "   runat= "server "   />
          </ItemTemplate>
</asp:TemplateField>
为什么2005中这么写复选框选不选中cb.Checked都是false

------解决方案--------------------
if(!IsPostBack)
Have a try
------解决方案--------------------
问题多半出在IsPostBack
------解决方案--------------------
看看Page_Load()中的代码是不是没有写在if(!ispostback){}中
------解决方案--------------------
这个是一个按钮的单击方法跟ISPOSTBACK没关系的
----------------------------------------------------
服务器控件的单击吧?估计真的是楼上所说的
------解决方案--------------------
新鸟一个,帮顶!!!jf
------解决方案--------------------
UP
------解决方案--------------------
当然有关系,按钮单击会触发Postback操作,如果你在Page_Load设置断点就会发现这个事件先于cmdOk_Click执行,所以如果是在Page_load中绑定数据,就需要放在if(!IsPostBack)中
------解决方案--------------------
做了下实验,我没发现你所说的问题,估计LZ要自己看看其它代码了。
不过如LS所说,如果你绑定数据的不在if(!IsPostBack){}里边,回出现你这个问题。
我想你不会犯这个小错误的