我正在使用mvc razor。
如果他们在视图加载时没有权限,我想让<div>
中的所有输入“只读”。
if(!myUser.Permissions("View infor"))
$('div.divMemberLookup :input').readonly(true);
我正在尝试使用jQuery readonly插件。
这样做的最佳方式是什么?
答案 0 :(得分:1)
如果你想要只读(而不是禁用),你可以这样做
$('div input')。attr(“readonly”,“readonly”);
其中一个不同之处在于您可以选择和复制只读属性,但不能复制已禁用的属性。
答案 1 :(得分:0)
trie this:
$('div input').attr("disabled", true);
答案 2 :(得分:0)
这真的需要一个插件吗?你能不能做这样的事情:
if(!myUser.Permissions("View infor"))
$('div.divMemberLookup input').attr('disabled',true);
答案 3 :(得分:0)
在if语句前添加@
符号。
@if(!myUser.Permissions("View infor"))
{
$('div.divMemberLookup :input').attr('readonly',true);
}
这样,只有在服务器端权限为真时才会呈现JS。
答案 4 :(得分:0)
我认为最好的方法是从服务器端代码生成输入字段:
在你的Razor页面中,你有这个
@RAW(Model.printInputfield());
在你的Model类上你有一个生成输入字段的方法
public string printInputfield(){
if(!myUser.Permissions("View infor"))
return "<input type='text' disabled:disabled value="ur Values" />";
else
return "<input type='text' value="ur Values" />";
}