我正在尋找一種更好的方式來使用包含在MVC視圖內的表單中的RadioButtons來顯示數據。 我目前正在使用的一個示例顯示MembershipUser所屬的角色。Radiobuttons在MVC應用程序中顯示數據
我正在做的是設置字符串變量的值,以便在我的輸入標記中輸出,以便將RadioButton設置爲在必要時進行檢查。正如你從下面的代碼可以看到的,這是一個非常醜陋的黑客攻擊。
你能提出一個更好的方式來呈現這些數據嗎?
<%
string User = string.Empty;
if (Roles.IsUserInRole(Model.UserName, "User"))
{
User = "checked='checked'";
}
string Priviliged = string.Empty;
if (Roles.IsUserInRole(Model.UserName, "Privileged"))
{
Priviliged = "checked='checked'";
User = string.Empty;
}
string Admin = string.Empty;
if (Roles.IsUserInRole(Model.UserName, "Admin"))
{
Admin = "checked='checked'";
Priviliged = string.Empty;
}
string SuperAdmin = string.Empty;
if (Roles.IsUserInRole(Model.UserName, "SuperAdmin"))
{
SuperAdmin = "checked='checked'";
Admin = string.Empty;
}
%>
<input type="radio" name="Permission" id="Permission" value="SuperAdmin" <%=SuperAdmin %> />SuperAdmin
<input type="radio" name="Permission" id="Permission" value="Admin" <%=Admin %> />Admin
<input type="radio" name="Permission" id="Permission" value="Privileged" <%=Priviliged %> />Privileged
<input type="radio" name="Permission" id="Permission" value="User" <%=User %> />User
謝謝奧馬爾。起初我想,如果用戶是一個特定的角色,他們也在其下的每個角色,但我會改變這種實現。你的答案是完美的。 – splatto 2009-12-14 17:27:14
是的,就像philjohn建議的那樣(+1),如果使用複選框,特別是當用戶處於多個角色時,它的可讀性更高。 – JOBG 2009-12-14 17:30:53