for (int i = 0; i < DataList1.Items.Count; i++)
        {
            HtmlInputCheckBox cb = (HtmlInputCheckBox)DataList1.Items[i].FindControl("chk");
            if (cb.Checked)
            {
                string id = ?;
                
                    
                Response.Write(id);
            } 
}我现在的问题是这样:我在DATALIST控件最前面放一列CHECKBOX 
我想选中后,就直接进行修改或者删除 
 
但是我要把这一列的某些字段值取出来 
请问怎么读取? 谢谢各位!

解决方案 »

  1.   


    foreach(HtmlInputCheckBox cb in (HtmlInputCheckBox)DataList1.Items[i].FindControl("chk"))
    {}
      

  2.   

    一样操作
    ((TextBox)DataList1.Items[i].FindControl("TextBox1")).Text;
      

  3.   

    如果取得是主键DataGrid1.DataKeys[i].ToString();
      

  4.   

    错了十 DataList1.DataKeys[i].ToString();前提是DataList设置过DataKeyField
      

  5.   

    ((TextBox)DataList1.Items[i].FindControl("tbox1")).Text;
      

  6.   

    请问我这样写: string id = ((Label)DataList1.Items[i].FindControl("tbxEmpId")).Text;为什么会提示:未将对象引用设置到对象的实例?因为我数据绑定的时候是用的LABEL
      

  7.   

    意思是没有找到id=tbxEmpId的label控件,你检查一下是否ID有错误
      

  8.   

    前台写上  <asp:BoundField DataField="开始时间" HeaderText="开始时间" />
                    <asp:BoundField DataField="编号" HeaderText="编号" />
                    <asp:TemplateField HeaderText="选择">
                        <ItemTemplate>
                        <input type="checkbox" id="checkboxname" name="checkboxname" value='<%# Eval("编号")%>'  />
    后台用Request.Form.Get("checkboxname")得到选择的行
      

  9.   

    有一个问题,你是选中了这个复选框只有在复选框的事件里处理,还是在DataList外部还有个按钮,通过点击按钮处理我猜测是点击按钮处理如果有问题,贴贴你的aspx的代码