用ng-model动态禁用一个span
Dynamically disable a span with ng-model
我正在使用ngModelController
制作自定义可编辑的<span>
的示例:https://docs.angularjs.org/api/ng/type/ngModel.NgModelController示例
我现在想做的是能够通过指令本身内的逻辑动态禁用此字段的编辑。通过禁用它,我的意思是用户将无法编辑文本,它只是显示为普通文本。
这是一个样品:
代码来自plunkr:
angular.module('app', [])
.controller('Ctrl', function ($scope) {
$scope.stuff = "test";
})
.directive('contenteditable',
function ($log) {
'use strict';
return {
restrict: 'A',
require: 'ngModel',
scope: {
},
link: function ($scope, $element, $attributes, ngModel) {
if (angular.isUndefined(ngModel)) {
$log.warn('ngModel is not defined');
return;
}
function read() {
ngModel.$setViewValue($element.text());
}
ngModel.$render = function () {
$element.html(ngModel.$viewValue || '');
};
}
};
}
);
感谢gitter中非常有帮助的人。在AngularJS的空间里,我意识到contentEditable
是一个实际的html5 api,这就是使span元素可编辑的原因,而不是AngularJS。
我所要做的就是改变指令的名称并动态地删除contentEditable
。
相关文章:
- jQuery将文本从span标记复制到另一个span标记
- 使用javascript为网站的body标记中的所有数字添加一个span
- 鼠标悬停在一个 span 元素上多次触发
- 从上一个 span 元素中获取样式
- 在一定数量的字符后,在p中添加一个span标记
- 如何附加一个span标记并为每个id指定一个新名称
- 如何防止所有链接(其中有一个span标签)打开
- 如何获得文本包围的一个span标签,并保存到一个隐藏的输入值,当我点击跨度
- 使用javascript在h5中添加一个span标签
- 如何用jquery输出一个span到一个li
- 在DIV中插入一个SPAN
- 如何使用javascript在现有的span标签之前添加一个span
- 如果使用jQuery可以看到另一个span's的子类,则隐藏该类
- 将CSS应用于旋转木马幻灯片上的另一个span
- 用ng-model动态禁用一个span
- Javascript:如何判断一个span是否是段落中的第一件事
- Rspec单击一个span
- Javascript:更新一个Span Text
- 如何在jquery中添加一个span标签到另一个span标签中
- Jquery删除所有的第一个span元素