问题描述
前台:<asp:TemplateFieldHeaderText="安装有线电视"><ItemTemplate><asp:CheckBoxID="tv"name="tv"runat="server"Checked='<%#Eval("tv")%>'Enabled="False"/></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="选择"><ItemTemplate><asp:CheckBoxID="choosecheckbox"name="choosecheckbox"runat="server"Checked='<%#Eval("choose")%>'Enabled="False"/></ItemTemplate></asp:TemplateField>后台:for(intj=0;j<gridview.Rows.Count;j++){CheckBoxchoose=(CheckBox)gridview.Rows[j].FindControl("choosecheckbox");if(choose.Checked){ProjectItempro=newProjectItem();CheckBoxtv=(CheckBox)gridview.Rows[j].FindControl("tv");if(tv.Checked){pro.tv=true;}pro.CONSTRUCTION_SERVICE_NO=SERVICE_NO;projectitems.Add(pro);}}代码如上tv那个checkbox一切正常,可是choosecheckbox死活不变。不管选中还是不选中,值都和之前绑定的一样。绑定已经放在了!is.postback中,应该不是这个问题。。大家知道还有可能是哪里的问题吗?尝试调换了两列checkbox的位置,还是没用。。。。。。
解决方案
解决方案二:
tv为什么要变呢?你没有改变啊
解决方案三:
解决方案四:
引用1楼wpfLove的回复:
tv为什么要变呢?你没有改变啊
我还有个编辑按钮当点击的时候checkbox都是可点击的
解决方案五:
发现问题了我把chooscheckbox的enable=false去掉就可以了但是为什么呢?tv也同样的啊也有enable=false同样都是通过一个jq控制的:$(":checkbox").attr("disabled",false);为什么tv可以另外一个不行呢?
解决方案六:
引用4楼shukai10的回复:
发现问题了我把chooscheckbox的enable=false去掉就可以了但是为什么呢?tv也同样的啊也有enable=false同样都是通过一个jq控制的:$(":checkbox").attr("disabled",false);为什么tv可以另外一个不行呢?
再一次发现问题tv也不可以那如果一开始让checkbox不可以编辑怎么操作呢?
解决方案七:
js去做改变,同学看来你的功力还比较差的。加油
解决方案八:
$(":checkbox").attr("disabled",false);这样去选择貌似是不对的吧
解决方案九:
既然你的有ID,为什么不使用ID选择器呢