• repeater列表中直接修改状态


    <asp:Repeater ID="RepeaterArticleList" runat="server" onitemdatabound="RepeaterArticleList_ItemDataBound">  
       <ItemTemplate>  
               <asp:HiddenField ID="HiddenField1" Value=<%#Eval("ID") %> runat="server" />  
      
        <asp:DropDownList ID="droplist1" runat="server" OnSelectedIndexChanged="DropDownList1_Change" AutoPostBack="true" >  
                      <asp:ListItem Text="启用" Value="1"></asp:ListItem>  
                      <asp:ListItem Text="禁用" Value="2"></asp:ListItem>  
                      <asp:ListItem Text="删除" Value="3"></asp:ListItem>  
             </asp:DropDownList>   
       </ItemTemplate>  
    </asp:Repeater>  
    

    cs代码中对应的DropDownList1_Change方法,取到用户ID,执行操作

    复制代码
    protected void DropDownList1_Change(object sender, EventArgs e)  
    {
    DropDownList drd = sender as DropDownList;
    Repeater rps = drd.Parent.Parent as Repeater;
    int n = ((RepeaterItem)drd.Parent).ItemIndex;
    HiddenField hid = (HiddenField)(rps.Items[n].FindControl("HiddenField1"));
    string userid= hid.Value;
    string userState = Convert.ToInt32(drd.SelectedValue);

    //已经拿到了id,可以进行操作

    YourFunction(userid,userState);
    }
    复制代码

    在前台显示的时候,再根据用户的状态值,来选择下拉菜单的默认选中值首先为RepeaterRepeater 控件添加事件 onitemdatabound="RepeaterArticleList_ItemDataBound" 接下来是完成代码

    protected void RepeaterArticleList_ItemDataBound(object sender, RepeaterItemEventArgs e)  
        {          
            DropDownList drd = (DropDownList)e.Item.FindControl("droplist1");  
            HiddenField hid = (HiddenField)(e.Item.FindControl("HiddenField1"));  
            //用你的方法通过ID得到状态值到userstate    
            string userstate = getUserStateByID(hid.Value);  
            drd.SelectedValue = userstate ;  
      
        }  
     
    
  • 相关阅读:
    uva11922splay
    获取的二维数组排序
    二维数组排序
    $.extend
    <eq>标签
    datagrid时间插件
    id=%d是什么意思呢?
    获得某一月的第一天,最后一天
    数组合并
    phpexcel 导入导出excel表格
  • 原文地址:https://www.cnblogs.com/rollup/p/3559922.html
Copyright © 2020-2023  润新知