<asp:TemplateField>
<HeaderTemplate>
<input id="Checkbox2" type="checkbox" onclick="javascript:selectAllCheckBox();" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
gridview的模板列用了一个input类型的checkbox,通过javascript控制来选中全部asp:CheckBox,但是页面刷新的话,asp:CheckBox可以用IsPostBack保留选中状态,input类型的checkbox如何保留选中状态呢?
解决方案 »
- VS2008 web开发
- 未将对象引用设置到对象的实例
- DetailsView添加完毕后,如何保留文本框中的值,我强行用findcontrol找到这个textbox,然后给他赋值,结果整个数据绑定直接失效!!
- 求exec 的解决方法
- ListBox绑定数据源未将对象的引用设置到对象的实例
- 自定义控件的迷惑?
- 对于在多用户并发请求的前提下,要保证尽量短的响应时间时,帖内所说需求如何实现更好呢?(谢谢!)
- 简单问题,如何用javascript删除DropDownList的条目,再重新添加
- 虚心请求:程式Debug运行和通过IIS运行的效果不一样,作何解?
- 怎么记VS对每个CS文件都生成一个DLL,而不是每个项目?
- 超时时间已到。在操作完成之前超时时间已过或服务器未响应。
- js的一个问题 急急急急!
试一下
public static IList GetCheckedRowsIndex(GridView gv, string checkBoxName)
{
IList list = new ArrayList(); for (int i = 0; i < gv.Rows.Count; i++)
{
CheckBox chkBox = (CheckBox)gv.Rows[i].FindControl(checkBoxName);
if (chkBox != null && chkBox.Checked)
{
list.Add(i);
}
}
return list;
}
刷新后再在加载gridviewRowBound的时候获取list里的index列表
然后依次设置其是否选中其实你可以使用AJAX或者UpDatePanel来使其不会刷新不就行了吗
<input id="Checkbox2" type="checkbox" onclick="javascript:selectAllCheckBox();" />
</HeaderTemplate>这个,之所以用了这个html形式的CheckBox是为了使用javascript后面的这些<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>我点按钮后刷新页面时,用IsPostBack就能不改变每一行的<asp:CheckBox>的状态,但是这个html的CheckBox的状态却保留不了