$scope 没有获取 select 元素中的 ng-model 值

$scope not picking up ng-model value in select element

我正在尝试向从 ng-model 接收的变量添加一个值。

这里是 HTML:

<div ng-form="amountForm" class="form-group" id="inputField">
    <input value="1" type="number" placeholder="1" ng-model="itemAmount" ng-maxlength="2" required>
</div>
<div ng-form="nameForm" class="form-group">
    <input value="" type="text" placeholder="Name of Item" ng-model="itemName" ng-maxlength="10" required>
</div>
<select ng-model="currentDependent">
    <option ng-repeat="item in items" value="{{item.dependentOn}}" ng-selected="currentDependent == item.dependentOn">{{item.name}}</option>
</select>

这是Angular($scope.itemAmount和$scope.itemName的作品):

$scope.items = [];

$scope.addItem = function () {
    console.log($scope.itemAmount + ", " + $scope.itemName + ", " + $scope.currentDependent);

    $scope.items.push({
        amount: $scope.itemAmount,
        name: $scope.itemName,
        showMe: false,
        dependentOn: $scope.currentDependent
    });
};

控制台上似乎没有打印出任何内容:

所以唯一不起作用的是 Select 中的 ng-model。下拉列表显示正确的值。如何获取在下拉列表中选择的值以在控制台中打印?

注意:为了清楚起见,我省略了 http.post 代码。

您应该使用 itemName(或其他项目 属性)来跟踪依赖性。

<select ng-model="currentDependent">
    <option ng-repeat="item in items" value="{{item.name}}">{{item.name}}</option>
</select>

我最近不得不在我的一个项目中使用下拉菜单,这是我个人的做法

http://jsfiddle.net/halirgb/Lvc0u55v/

不要忘记打开控制台查看值!

起初,我认为只 ng-repeat 我的选择是个好主意。但后来我发现使用 ng-options 更方便,当你掌握它时。

This 这个问题解释得很好!