我现在正在做一个简单的编辑器,用角度。主文本框只是一个div,contentEditable设置为true,ng bind html属性如下:
<div contenteditable="true" ng-bind-html="field.content">HTML content here</div>
使用正确的标记和页面加载来正确设置和呈现该值。但由于它只以一种方式绑定,我的数据或模型在编辑时不会更新。
我试过一些contentEditable directivs,但大多数都需要ng模型,但如果我添加了html标记,则不会呈现并转换为符号。
在div的内容被更改之后,我应该如何更新我的数据,并保持html标记等格式正确?
编辑:暂时使用这个临时的“修复”,但是我想要更健壮的东西。
<div contenteditable="true" ng-bind-html="field.content"
ng-blur="saveHTML($event)"></div>
$scope.saveHTML = function(event) {
this.field.content = event.target.innerHTML;
}
最佳答案
您可以尝试使用ngModel指令:
<div contenteditable="true"
ng-bind-html="field.content"
ng-model="field.content">
HTML content here
</div>
关于javascript - 如何将ng-bind-html与双向数据绑定(bind)一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19003753/