jQuery只读<div> </div>

时间:2011-08-25 16:29:06

标签: jquery html

我正在使用mvc razor。

如果他们在视图加载时没有权限,我想让<div>中的所有输入“只读”。

if(!myUser.Permissions("View infor"))
    $('div.divMemberLookup :input').readonly(true);

我正在尝试使用jQuery readonly插件。

这样做的最佳方式是什么?

5 个答案:

答案 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);

jsFiddle Example

答案 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"  />";
}