2013-03-03 50 views
2

如何禁用kendo编辑器或将其设置为只读?我尝试使用HTML属性,但没有运气(或我仍然这样做是正确的)如何禁用asp.net中的kendo编辑器mvc

    @(Html.Kendo().Editor() 
        .Name("Text") 
        .Value(@detail.SRoomInformation) 
        .Tools(tools => tools.Clear()) 
        ) 

回答

5

如果你想知道为什么没有这样的选项,如启用/禁用 - 因为HTML可以简单地表示为HTML或文本 - 编辑器提供的所有工具都不需要,使用这种小部件毫无意义。编辑意味着它可以帮助你编辑)

如果你真的想使它禁用就可以初始化编辑

例如后使用下面的代码行

@Html.Kendo().Editor().Name("test") 


<script type="text/javascript"> 
    $(function() { 
     $($('#test').data().kendoEditor.body).attr('contenteditable', false) 
    })   
</script> 
+0

它的工作。我使用编辑器来显示一些描述(包括图像和html标签),所以我需要使其只读 – user1392853 2013-03-04 11:28:03

+0

似乎论坛链接在这个职位是坏了? – theycallmemorty 2015-03-27 15:26:27

2

不知道为什么回答的问题不适合我。但无论如何,它引发了这样的事情:

@(Html.Kendo().EditorFor(model => model.Description)) 
@Html.ValidationMessageFor(model => model.Description) 
<script> 
    // this piece of code neeeeeeeds to be heeeeere! Don't move it 
    $(document).ready(function() { 
     var editor = $('#Description').data('kendoEditor'); 
     editor.body.contentEditable=false; 
    }); 
</script> 

而这工作!:)玩得开心!

0

当我尝试实施它们时,上述解决方案都不适用于我。看来,Telerik的提供了一个非常简单的解决这个涉及一个覆盖DIV截至记载:http://docs.telerik.com/kendo-ui/controls/editors/editor/how-to/enable-and-disable-editor

在实践中,这导致了额外的div旁边的控制,我想禁用:

<div ng-if="readonly/disabled_Condition == true"> 
    <div id="overlay" style="width:100%;height:250px; top:100; position:absolute; background-color: black; opacity:0.1; z-index:2;"></div> 
    <textarea kendo-editor k-options="options.DutyEditor" ng-model="item.TasksHtml"></textarea> 
</div> 

的一个问题是将覆盖div的大小与您的剑道编辑器的大小相匹配。在我的情况下,这是一个简单的100%宽度和250像素的高度,所以我在这里幸运。

认为这可能有助于某人!