Связывание ng-repeat и ng-модели в контроллере

Это мой первый пост здесь, так что терпите меня, я довольно плохо знаком с AngularJS. Я пытаюсь создать форму с помощью ng-repeat и не могу обернуть голову вокруг угловатых элементов.

JS в контроллере:

$scope.myCurrentAssets = {
        cash_equiv: {name: 'Cash & Equivalents', value: 0, tbi: 41},
        invest: {name: 'Short Term Investments', value: 0, tbi: 42},
        notes_rec: {name: 'Notes Receivable', value: 0, tbi: 43},
        account_rec: {name: 'Accounts Receivable', value: 0, tbi: 44},
        inventory: {name: 'Inventory', value: 0, tbi: 45},
        prepaid: {name: 'Prepaid Expenses', value: 0, tbi: 46},
        other: {name: 'Other Current Assets', value: 0, tbi: 47}
    };

HTML:

<div class="row" ng-repeat="(keyAssets, valueAssets) in myCurrentAssets">
     <span>{{valueAssets.name}}</span>
     <input data-name="myCurrentAssets.{{keyAssets}}"
          data-ng-model=""
          data-placeholder="{{valueAssets.value}}"
          data-ng-change="compute()"
          />
</div>

У меня проблемы:

  1. пытаясь получить для data-ng-model уникальное значение в каждом экземпляре ng-repeat

  2. как получить доступ к значению поля ввода из функции compute()?

1 ответ

Решение

пытаясь получить для data-ng-model уникальное значение в каждом экземпляре ng-repeat

Ты можешь использовать list[key][value] это будет отличаться для каждого элемента в ng-repeat

как получить доступ к значению поля ввода из функции compute()?

Как правило, вы можете использовать ng-model который автоматически выбирает input данные.

<div class="row" ng-repeat="(keyAssets, valueAssets) in myCurrentAssets">
     <span>{{valueAssets.name}}</span>
     <input data-name="myCurrentAssets[keyAssets]['name']"
          data-ng-model="myCurrentAssets[keyAssets]['value']"
          data-placeholder="myCurrentAssets[keyAssets]['value']"
          data-ng-change="compute(myCurrentAssets[keyAssets]['value'])"     
          /> 
</div>

Демо Фиддл

Другие вопросы по тегам