【问题标题】:How to disable AngularJS Kendo UI Editor如何禁用 AngularJS 剑道 UI 编辑器
【发布时间】:2015-02-25 00:18:16
【问题描述】:

我尝试过使用k-content-editable 以及通用的data-ng-disabled,但这些都不起作用。查看文档,我什至不清楚是否有禁用控件的方法。

【问题讨论】:

    标签: angularjs kendo-ui kendo-editor


    【解决方案1】:

    您可以通过创建自定义指令来做到这一点:

       .directive("kNgDisabled", function() {
          return {
            restrict: "A",
            link: function(scope, element, attr) {
              scope.$on("kendoWidgetCreated", function(e, widget) {
                var value = scope.$eval(attr.kNgDisabled);
    
                $(widget.body).attr("contenteditable", !value);
    
                scope.$watch(attr.kNgDisabled, function(value) {
                  $(widget.body).attr("contenteditable", !value);
                });
              })
            }
          }
        });
    

    然后像这样使用它:

    <textarea kendo-editor k-ng-disabled="disabled"></textarea>
    

    这是一个现场演示:http://dojo.telerik.com/@korchev/AdApu

    【讨论】:

    • 谢谢!很遗憾,没有办法通过编辑器本身来做到这一点。
    【解决方案2】:

    在你的 Angular 控制器中添加以下代码->

     var x = document.getElementById("myForm");
        x.addEventListener("focus", myFocusFunction, true);
    
        function myFocusFunction() {
             $($('#keFinding').data().kendoEditor.body).attr('contenteditable', false);  
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-24
      • 1970-01-01
      • 1970-01-01
      • 2013-01-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多