【发布时间】:2015-02-25 00:18:16
【问题描述】:
我尝试过使用k-content-editable 以及通用的data-ng-disabled,但这些都不起作用。查看文档,我什至不清楚是否有禁用控件的方法。
【问题讨论】:
标签: angularjs kendo-ui kendo-editor
我尝试过使用k-content-editable 以及通用的data-ng-disabled,但这些都不起作用。查看文档,我什至不清楚是否有禁用控件的方法。
【问题讨论】:
标签: angularjs kendo-ui kendo-editor
您可以通过创建自定义指令来做到这一点:
.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);
}
【讨论】: