我有一个表格,有一些输入和角度模型。
<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
输出未定义/空。为什么这个模型/对象没有通过?我做错了什么?我该怎么解决?
最佳答案
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>
此外,您正在将您的only
value
的<option>
设置为“mfrNo”。我不知道这是不是有意的,但这意味着$scope.mfrNo
的值将是"mfrNo"
。我想您的意思是将它设置为$scope
中的其他值。使用{{some_scope_var}}
插值。