2015-04-04 5 views
12

У меня есть форма и список предметов. Я использовал ng-model="searchFor", чтобы отфильтровать список элементов соответствующим образом (эта часть работает нормально), но я также хочу «отправить» элемент, отфильтрованный, что также потребует ng-model="adding_item.name" в поле ввода (я думаю).Несколько ng-моделей в одном поле ввода?

У вас есть несколько ng-models на одном поле ввода? Есть ли другой способ обойти это?

ответ

6

Нет, ngModel не должен был делать подобные вещи, в этот момент лучше начать перемещение логики из представления. Для этого сценария можно использовать в getterSetter опции:

https://docs.angularjs.org/api/ng/directive/ngModel#binding-to-a-getter-setter

Это трудно сделать существенные предложения, не видя кода.

9

Попробуйте использовать событие ng-change для захвата значения модели и присвоить его другому элементу ввода с его собственной ng-моделью.

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app> 
 
    <input type="text" ng-model="input" ng-change="input1=input;input2=input; " /> 
 
    <input type="hidden" ng-model="input1" /> 
 
    <input type="hidden" ng-model="input2" /> 
 
    <br>Model 
 
    <br>{{input | uppercase}} 
 
    <br>Model 1 
 
    <br>{{input1 | uppercase}} 
 
    <br>Model 2 
 
    <br>{{input2 | uppercase}} 
 
</div>

Смежные вопросы