我有一张表有一些输入和角度模型。
<td>
<select class="form-control" id="">
<option ng-model="mfrNo" ng-repeat="manufacturer in manufacturers" value="mfrNo">{{manufacturer.SUPP_NAME}} [{{manufacturer.SUPP_NO}}]</option>
</select>
</td>
<td>
<input type="text" ng-model="newCon" class="form-control" name="new_contract_number" value="" maxlength="500"/>
</td>
<button type="button" class="btn btn-default" data-dismiss="modal" data-ng-click="reassignContract()">Reassign</button>
在我的控制器中,我想检索选择/输入的值。
$scope.reassignContract = function () {
console.log($scope.newCon);
console.log($scope.mfrNo);
};
第一个模型newCon
正确传递文本输入。但第二个,mfrNo
输出undefined / null。
为什么这个模型/对象没有通过?我做错了什么,如何解决?
答案 0 :(得分:3)
ngModel
应该放在<select>
而不是<option>
上。您还应该考虑使用ngOptions
。
所以:
<td>
<!-- ngModel should go here -->
<select ng-model="mfrNo" class="form-control" id="">
<!-- Instead of here -->
<option ng-repeat="manufacturer in manufacturers" value="mfrNo">{{manufacturer.SUPP_NAME}} [{{manufacturer.SUPP_NO}}]</option>
</select>
</td>
此外,您要将value
的{{1}}设置为&#34; mfrNo&#34;。我不知道这是否是故意的,但这意味着<option>
的值将是$scope.mfrNo
。我认为你的意思是将其设置为"mfrNo"
的其他值。使用$scope
插值。