我是MVC5的新手,我想限制Create方法显示一个基于Role的固定值的字符串字段。
更多细节我想根据UserRole设置固定值为“Jeddah,Riyadh,Alahsa”的Region参数。如果角色JeddahAdminAssitant中的用户他只能创建具有区域吉达等的新员工,请提供帮助吗?
我怎样才能实现它。 我搜索了很多,我发现我可以通过在Create视图中添加Java scrip来实现。 低于我的尝试
<script type="text/javascript">
if ($(Role) == 'JeddahAdminAssitant') {
$('input[Region="Jeddah"]').prop("disabled", true);
}
else {
$('input[Region="Riyadh"]').prop("disabled", false);
}
</script>
@using (Html.BeginForm("Create", "Employees", FormMethod.Post, new { enctype = "multipart/form-data" }))
答案 0 :(得分:0)
您可以将角色信息传递给您的视图
@model Role
<script type="text/javascript">
var roleName = '@Model.RoleName';
if (roleName == 'JeddahAdminAssitant') {
$('input[Region="Jeddah"]').prop("disabled", true);
}
else {
$('input[Region="Riyadh"]').prop("disabled", false);
}
</script>
@using (Html.BeginForm("Create", "Employees", FormMethod.Post, new { enctype = "multipart/form-data" }))
或者您可以使用角色信息来创建html元素。例如
@if(Model.RoleName == "..."){
<input ..../>
}