Привязка ng-модели не работает на div
Два привязки AngularJS не работают на div. Я хочу, чтобы мой div был доступен для редактирования, но этого не произошло. Может ли кто-нибудь предложить, что может быть неправильным? Такая же привязка отлично работает в текстовом поле. Это мой код:
<input type="text" ng-model="userProfile.firstName"/>
<div class="profile-name" contenteditable="true" ng-model="userProfile.firstName"></div>
Ответы
Ответ 1
Пожалуйста, попробуйте это, это может помочь
https://github.com/angular/angular.js/issues/528
Это трехлетняя открытая проблема, которую тонны людей хотели бы исправлять. Он помечен как post-1.2-milestone
и feature
, а не ошибка. Увидев, что Angular.js находится в выпуске 1.2.13 по состоянию на февраль 2014 года, похоже, что никто в команде не заботится об этой проблеме на данный момент. В результате вам будет лучше сворачивать свой собственный код или придерживаться элемента управления input
/textarea
.
Ответ 2
что правильное поведение. из angular docs "ng-model - это директива, которая сообщает angular выполнять двустороннюю привязку данных. Она работает вместе с вводом, select, textarea. Вы можете легко написать свои собственные директивы для использования ngModel."
Другими словами, если вы хотите, чтобы он работал с div, объявите директиву, которая привязывает модель к innerhtml div.
docs здесь
Ответ 3
используйте ng-bind.
<ANY
ng-bind="expression">
...
</ANY>
Отметьте https://docs.angularjs.org/api/ng/directive/ngBind.