如何禁用 AngularJS Kendo UI 编辑器
How to disable AngularJS Kendo UI Editor
我尝试过使用 k-content-editable
以及通用的 data-ng-disabled
,但这些都不起作用。查看文档,我什至不清楚是否有禁用控件的方法。
您可以通过创建自定义指令来做到这一点:
.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>
在您的 Angular 控制器中添加以下代码->
var x = document.getElementById("myForm");
x.addEventListener("focus", myFocusFunction, true);
function myFocusFunction() {
$($('#keFinding').data().kendoEditor.body).attr('contenteditable', false);
}
我尝试过使用 k-content-editable
以及通用的 data-ng-disabled
,但这些都不起作用。查看文档,我什至不清楚是否有禁用控件的方法。
您可以通过创建自定义指令来做到这一点:
.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>
在您的 Angular 控制器中添加以下代码->
var x = document.getElementById("myForm");
x.addEventListener("focus", myFocusFunction, true);
function myFocusFunction() {
$($('#keFinding').data().kendoEditor.body).attr('contenteditable', false);
}