页面上有三个datalist,每个的ItemTemplate都嵌套radiobutton。 
这些radiobutton都属于同一个“groupname” 
我想实现的是 选中某个radiobutton后把对应的datalist里的DataKeys的值取到 
DataKeys的值是数据库里的纪录编号

解决方案 »

  1.   

    可以记录编号绑定到radiobutton的一个属性上
      

  2.   

    楼主打算在什么事件中处理?是radioButton选中就触发服务器事件(CheckedChanged)?还是DataList里面的某个按钮,还是DataList外的某个按钮
      

  3.   

        protected void Button1_Click(object sender, EventArgs e)
        {
            string id;
            foreach (DataListItem item in DataList1.Items)
            {
                //得到主键值,DataList应该已经设置过DataKeyField属性
                id = DataList1.DataKeys[item.ItemIndex].ToString();
                //不知道你的RadioButton对应什么?
            }
        }
      

  4.   

    是datalist里每一条数据对应一个radiobutton
    我想选中一个radiobutton后,把这一条数据的id取到
    在按钮提交时使用
      

  5.   

    我也遇到这样的问题想删除 嵌套datalist的 某一条数据 ,外层 datalist1,  里层 datalist2
      

  6.   

    三个datalist有什么关系没有?是否属于嵌套关系?如果没有嵌套关系各自独立的话
    //设置DataList的DataKeyNames="id"
    //在按钮事件中
    protected void Button1_Click(object sender, EventArgs e) 
        { 
            string id; 
            foreach (DataListItem item in DataList1.Items) 
            { 
               RadioButton rb=item.FindControl("RadioButton1") as RadioButton;//RadioButton1为RadioButton的ID
               if(rb.checked)
               {
                  //得到主键值,DataList应该已经设置过DataKeyField属性 
                    id = DataList1.DataKeys[item.ItemIndex].Values["id"].ToString(); 
                  
               }
            } 
        }
      

  7.   


    string id = string.Empty;
     foreach (DataListItem item in DataList1.Items) 
            { 
               RadioButton rbt =(RadioButton)item.FindControl("RadioButton1") ;
              if(rbt.checked){
               id = DataList1.DataKeys[item.ItemIndex].ToString(); 
              }
            }