Присвойте значение из одной ng-модели в другую в angularjs

0

Я создал мультиселекцию с директивой autocomplete, которая отображает выбранный список в ng-модель директивы. Я хочу получить одно значение поля из ng-модели и назначить его другой ng-модели. Я не могу этого сделать. Если я передаю значение всей ng-модели и присваиваю другой ng-модели свой рабочий режим, но с единственным значением поля, он не работает.

Пожалуйста, найдите ссылку для скрипача для кода -

https://jsfiddle.net/719x1rbs/11/l

<div ng-controller="TestCtrl">


    <typeahead data-ng-model="selecteds" ng-change="emailId=selecteds.email" items="contacts" displaytag="name" displayitem="name">
    </typeahead>
    <input type="hidden" ng-model="emailId" />
    {{emailId}}
  </div>

Я не могу запустить код в скрипке, но его код работает в моей системе.

Может кто-нибудь, пожалуйста, помогите мне в том, как я могу передать одно поле в ng-модели на другую ng-модель. В {{emailId}} я должен получить значение "@pacman.com".

  • 0
    предоставьте более подробную информацию о том, что вы хотите и где отражать изменения. @sonam
  • 0
    В ng-модели, прикрепленной к директиве, я получаю значения в виде массива. На бэкэнд я не хочу отправлять полный массив выбранных предметов. Я просто хочу отправить, как, скажем, в приведенном выше примере, emailId, поэтому я беру скрытую переменную и отображаю значение ng-model директивы в эту скрытую переменную ng-model onchange, но она не работает. Я хочу передать значение в бэкэнд как {'[email protected]', '[email protected]', '[email protected]'} я прикрепил код Fiddler для того же самого.
Показать ещё 1 комментарий
Теги:

1 ответ

0

На самом деле проблема с вашим кодом заключается в том, что вы хотите получить идентификатор электронной почты из выбранных элементов, выполнив selecteds.email но selecteds объекты не являются объектом с свойством email его массивом выбранных объектов. Таким образом, вы должны использовать свойство двунаправленного привязки Angular и напрямую использовать selecteds массив объекта и перебирать его, чтобы получить отдельный массив идентификаторов электронной почты. На каком-то конкретном событии. Потому что в вашем случае событие ng-change не будет срабатывать каждый раз, когда значение Модели изменится, поскольку его настраиваемая директива вы можете пройти через Question/Answer. Поэтому убедитесь, что вы запустили надлежащее событие для своей полной потребности.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню