inline С# код внутри страницы aspx
Я хочу отображать различные варианты раскрывающегося списка на основе переменной userName, но не знаю, как это сделать. Здесь код:
<form id="frmViewRequest" runat="server">
<div class="widget-content">
<div class="padd"><div class="row">
<div class="col-md-2">
<% if (userName == "jpublic"){
<asp:DropDownList class="form-control" runat="server" AutoPostBack="true" ID="ddlChangeStatus">
<asp:ListItem Text="Under Review" value="1" />
</asp:DropDownList>
}
else{
<asp:DropDownList class="form-control" runat="server" AutoPostBack="true" ID="ddlChangeStatus">
<asp:ListItem Text="Under Review" value="1" />
<asp:ListItem Text="Approved" value="2" />
<asp:ListItem Text="Rejected" value="3" />
<asp:ListItem Text="Logged" value="4" />
<asp:ListItem Text="Completed" value="5" />
</asp:DropDownList>
}
%>
Это возможно? И если да, то как я могу показать разные ListItems на основе имени пользователя? Благодарю!
Не объявляйте несколько выпадающих списков.
Вместо этого запишите свой dropdownlist в код:
if (username == "jpublic")
ddlChangeStatus.DataSource = ...;
else
ddlChangeStatus.DataSource = ...;
ddlChangeStatus.DataTextField = ...;
ddlChangeStatus.DataValueField = ...;
ddlChangeStatus.DataBind();
Или со статическими данными:
ddlChangeStatus.Items.Add(new ListItem("Under Review", "1"));
if (username != "jpublic")
{
ddlChangeStatus.Items.Add(new ListItem("Approved", "2"));
ddlChangeStatus.Items.Add(new ListItem("Rejected", "3"));
ddlChangeStatus.Items.Add(new ListItem("Logged", "4"));
ddlChangeStatus.Items.Add(new ListItem("Completed", "5"));
}
Вам нужно открыть/закрыть каждую строку С#.
<asp:DropDownList class="form-control" runat="server" AutoPostBack="true" ID="ddlChangeStatus">
<% if (userName == "jpublic"){ %>
<asp:ListItem Text="Under Review" value="1" />
<% } else { %>
<asp:ListItem Text="Under Review" value="1" />
<asp:ListItem Text="Approved" value="2" />
<asp:ListItem Text="Rejected" value="3" />
<asp:ListItem Text="Logged" value="4" />
<asp:ListItem Text="Completed" value="5" />
<% } %>
</asp:DropDownList>