转自:http://blog.csdn.net/pplcheer/article/details/50437363
1.首先如何在gridview中加入一个checkbox,注意不是checkboxfiled
<Columns> <asp:TemplateField> <ItemTemplate> <asp:CheckBox ID="CheckBox1" runat= "server" BorderStyle= "None" /> </ItemTemplate> </asp:TemplateField> <asp:BoundField DataField="countyname" HeaderText= "县" FooterText= "县区" /> <asp:BoundField DataField="DepartmentId" /> </Columns>
2.全选功能
找到checkbox1是最重要的:CheckBox cbox=(CheckBox)gridview1.Rows[i].FindControl("CheckBox1");
for ( int i = 0; i < gridview1.Rows.Count; i++) { CheckBox cbox = (CheckBox)gridview1.Rows[i].FindControl("CheckBox1" ); cbox.Checked = true ; }
这样就能实现全选功能
3.添加选中的项
for ( int i = 0; i < gridview1.Rows.Count; i++) { CheckBox cbox=(CheckBox)gridview1.Rows[i].FindControl("CheckBox1" ); if (cbox.Checked == true ) { } }
跟全选功能差不多
4.如果要显示数据库 中已有的项
就是页面载入给gridview绑定数据的时候,要在RowDataBound事件中完成,没执行一行数据,看符不符合条件让checkbox勾选上
5.访问gridview中隐藏的列
注意,一开始不能就隐藏某列,这样的话是取不到值的
gridview1.Columns[2].Visible = true ; DataSet dscounty = Lib.DBUtility.DbHelperSQL.Query("select * from county left join location on county.countyid=location.countyid and DepartmentId='" +Session[ "DepartmentId" ].ToString().Trim()+ "' where county.cityaddresscode='" +dw_city.SelectedValue+ "'" ); gridview1.DataSource = dscounty; gridview1.DataBind(); gridview1.Columns[2].Visible = false ;
===============================================
asp.net gridview中checkbox 单选
function signcheck(cbox) { var obj = document.getElementsByTagName("input" ); for (var i=0;i<obj.length;i++) { if (obj[i].type== "checkbox" ) { obj[i].checked = false ; } } var sid = cbox.id; document.getElementById(sid).checked = true ; } gridview模板列代码: <asp:TemplateField ShowHeader="False" HeaderText= "选择" > <ItemTemplate> <asp:CheckBox ID="CheckboxSign" runat= "server" /> </ItemTemplate> </asp:TemplateField> gridview数据行数据加载: protected void GridViewDuckSeed_RowDataBound( object sender, GridViewRowEventArgs e) { try { CheckBox cb = (CheckBox)e.Row.FindControl("CheckboxSign" ); if (cb != null ) cb.Attributes.Add("onclick" , "signcheck(" + cb.ClientID + ")" ); } catch { ; } } 通过选择行执行删除操作: protected void btnDelete_Click( object sender, EventArgs e) { string DuckNum = "" , IsValid = "" ; foreach (GridViewRow row in GridViewDuckSort.Rows) { CheckBox CheckboxSign = row.FindControl("CheckboxSign" ) as CheckBox; if (CheckboxSign.Checked == true ) { DuckNum = row.Cells[1].Text.ToString(); IsValid = row.Cells[3].Text.ToString(); } } if (! string .IsNullOrEmpty(DuckNum)) Master.MessageBox("可执行删除操作!" ); else Master.MessageBox("没有选择数据操作无效!" ); } }
如何让checkbox复选框只能单选
$( "#txm" ).find( ".checkbox" ).each( function (){ $(this ).click( function (){ var test= $( this ).attr( "checked" ); if ( this .checked){ GetData(this .value); $(this ).parent( "div" ).siblings().children( ".checkbox" ).each( function (){ if (test== this .checked){ this .checked = false ; } }); } }); }); });