无法在angularJs中设置下拉列表的选中值

15 浏览
0 Comments

无法在angularJs中设置下拉列表的选中值

我有一个下拉菜单。我使用ng-repeat在选项上绑定它的值。

我想要仅通过设置值字段来设置选定的值。

这是我的代码。

    
    选定的值是:{{selectedItemvalue}}

Js

angular.module('myApp', [])
// 在此处添加控制器
.controller('myCtrl', function($scope) {
    $scope.selectables = [
        { label: 'A', value: 1},
        { label:'B', value: 2},
        { label: 'C', value: 3}
    ];
    // 这是用于在select指令中进行数据绑定的模型
    // 默认选定的项目
    // 使用值,我想要设置选定的值
    $scope.selectedItemvalue = "2"; 
})

我的Fiddle

正如您所看到的,我想通过仅设置值字段来设置选定的值。

0
0 Comments

问题原因:在AngularJS中,要绑定下拉列表的值到模型,应该使用ng-model而不是ng-value。

解决方法:在控制器中,将$scope.selectedItem改为$scope.selectedItemvalue,并使用ng-selected来匹配条件。

代码示例:

angular.module('myApp', [])
.controller('myCtrl', function($scope) {
    $scope.selectables = [
        { label: 'A', value: 1},
        { label:'B', value: 2},
        { label: 'C', value: 3}
    ];
    $scope.selectedItemvalue = "2";
});


Selected Value is : {{selectedItemvalue}}

以上是问题的原因和解决方法,希望对您有帮助。

0
0 Comments

问题出现的原因是:在AngularJS中,无法直接通过设置value字段来选中下拉列表中的选项。

解决方法是:可以通过设置一个对象来选中下拉列表中的选项。例如,使用$scope.selectedItemvalue = { label:'B', value: 2}; 来选中某个选项。

代码示例:

$scope.selectedItemvalue = { label:'B', value: 2};

如果希望通过value字段来选中下拉列表中的选项,可以尝试以下方法:


这样,根据selectedItemvalue.value字段的值,可以选中相应的下拉列表选项。

0
0 Comments

当使用AngularJS设置下拉菜单的选定值时,可能会遇到“Unable to Set Selected Value Of DropDown In angularJs”的问题。这个问题的解决方法如下:

option标签中,使用以下语法(使用ng-selected):

<option ng-repeat="sel in selectables" value="{{sel.value}}" ng-selected="sel.value == selectedItemvalue">{{sel.label}}</option>

以上是解决该问题的方法。

0