Связывание с contenteditable
не построен, но вы можете написать простую директиву, которая будет выполнить задачу.
app.directive("contenteditable", function() {
return {
restrict: "A",
require: "ngModel",
link: function(scope, element, attrs, ngModel) {
function read() {
ngModel.$setViewValue(element.html());
}
ngModel.$render = function() {
element.html(ngModel.$viewValue || "");
};
element.bind("blur keyup change", function() {
scope.$apply(read);
});
}
};
});
Примите к сведению, однако, что в Internet Explorer, contenteditable
не может быть применен к TABLE
, COL
, COLGROUP
, TBODY
, TD
, TFOOT
, TH
, THEAD
или TR
элементов непосредственно; содержимое редактируемого элемента SPAN
или DIV
необходимо разместить внутри отдельных ячеек таблицы (см. http://msdn.microsoft.com/en-us/library/ie/ms533690(v=vs.85).aspx).
Прошу прощения, я немного нового для angularJS. Что такое директива? Является ли это функцией внутри моего контроллера? – vellattukudy
https://docs.angularjs.org/guide/directive. Директивы - это настраиваемый код, который можно использовать так же, как и контроллеры для добавления пользовательского поведения в ваш HTML. – Claies
Большое спасибо Клэям. что на самом деле является 'ограничивать:" A "и" require: "ngModel", 'означает? – vellattukudy