具有预定义选择选项的ng-model

时间:2014-05-02 20:03:46

标签: javascript angularjs

好的,我确信这个很简单,虽然它在逃避我。

我有一个非常简单的下拉选择菜单 - 如下所示 - 带有预定义的选项。

我在控制器中设置了$scope.qty并正确选择了相应的<option>

然而,在我的控制器中,在save()函数上,当我得到$scope.qty的值时,我得到原始值,即我之前设置的值,而不是新选择的值。

将选定的选项绑定到模型时我缺少什么?

        <select ng-model="qty">
               <option value="1">1</option>
               <option value="2">2</option>
               <option value="3">3</option>
               <option value="4">4</option>
        </select>

在我的控制器中,我设置了数量

$scope.qty = 4;

当我更改我的选择时,说2,$scope.qty仍然等于4。

2 个答案:

答案 0 :(得分:0)

您只需在ng-options中创建数组:

<select ng-options="nr for nr in [1,2,3,4]" ng-model="qty"></select> 

虽然你这样做的方式通常也应该有效。 ng-options工作不需要ng-model。这是相反的方式。

答案 1 :(得分:0)

AngularJS 1.3仅允许一个可用于空值的选项元素(也就是未选中)。

您需要使用ngOptions约定。

以下是解释此问题的文档:
https://docs.angularjs.org/api/ng/directive/select