首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

GridView 中 Checkbox取值有关问题,

2012-04-11 
GridView 中 Checkbox取值问题,急,急,急C# codeasp:GridView IDGvNewsInfo runatserver AutoGenera

GridView 中 Checkbox取值问题,急,急,急

C# code
<asp:GridView ID="GvNewsInfo" runat="server" AutoGenerateColumns="False" DataKeyNames="JobID"            EmptyDataText="当前没有任何招聘信息!" Width="100%"  AllowPaging="True"  EnableModelValidation="True">            <Columns>                <asp:TemplateField HeaderText="选择">                    <ItemTemplate>                        <asp:CheckBox ID="ChkItem" runat="server" />                    </ItemTemplate>                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="100px" />                </asp:TemplateField>                <asp:BoundField DataField="JobID" HeaderText="招聘ID" InsertVisible="False" ReadOnly="True"                    SortExpression="JobID" />             </Columns>            <HeaderStyle BackColor="#E9F3D6" ForeColor="#5C9948"></HeaderStyle>            <PagerStyle BackColor="#E9F3D6"></PagerStyle>        </asp:GridView>


现在有这么一个GridView,现在我要将第一列复选框选中的值存到DataTable中。请问各位大侠,这个该如何实现啊?

有帮助的解答者分数不会少。急。急。急啊、、

[解决办法]
foreach (GridViewRow gvr in GridView1.Rows)
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("id", typeof(System.String)));
CheckBox ch = (CheckBox)gvr.FindControl("ChkItem");
if (ch.Checked)
{
dr = dt.NewRow();
dr[0] = GridView1.DataKeys[gvr.DataItemIndex].Value.ToString(); 
dt.Rows.Add(dr);
}
}
[解决办法]
探讨
foreach (GridViewRow gvr in GridView1.Rows)
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("id", typeof(System.St……

[解决办法]
public class SmsManagerActivity extends TabActivity {
/** Called when the activity is first created. */
private TabHost tabHost;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tabHost = getTabHost();//得到TabHost
// setUpConversation();
setUpDuixiang();
setUpDiaoqian();
}
[解决办法]
探讨

引用:
foreach (GridViewRow gvr in GridView1.Rows)
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("id", typeof(……

[解决办法]
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
foreach (GridViewRow gvr in GridView1.Rows)
{

dt.Columns.Add(new System.Data.DataColumn("id", typeof(System.String)));
CheckBox ch = (CheckBox)gvr.FindControl("ChkItem");
if (ch.Checked)
{
dr = dt.NewRow();
dr[0] = gvr.cells[1].text;
dt.Rows.Add(dr);
}
}
[解决办法]
dt.Columns.Add(new System.Data.DataColumn("id", typeof(System.String)));


这句也放到foreach外面来
[解决办法]
给个小例子。。

C# code
        foreach (GridViewRow row in GridView1.Rows)        {            bool postback = ((CheckBox)row.FindControl("CheckBox1")).AutoPostBack;            if (!postback)            {                ((CheckBox)row.FindControl("CheckBox1")).AutoPostBack = true;            }        }
[解决办法]
前台:
<input name="CheckBox" id="CheckBox" runat="server" type="checkbox" value='<%#Eval("UserID") %>' />
后台
public string Getid()
{
string streid = "";
for (int i = 0; i < this.GvNewsInfo.Rows.Count; i++)  //根据Repeater 控件的情况执行循环判断目标复选框是否被选中
{
HtmlInputCheckBox CB = (HtmlInputCheckBox)this.Repeater1.Items[i].FindControl("CheckBox"); //获取一个目标复选框情况
if (CB.Checked == true) //判断该复选框是否被选中
{
streid = streid + CB.Value + ","; //程序处理代码
}
}
if (streid.Length > 0)
{
streid = streid.Remove(streid.Length - 1);
}
return streid;
}
得到你选中的ID 以,分开的 数组

热点排行