Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularJS中具有不同选定值的多个选择框_Angularjs - Fatal编程技术网

angularJS中具有不同选定值的多个选择框

angularJS中具有不同选定值的多个选择框,angularjs,Angularjs,我有多个选择框,我使用的是angular JS。每个选择框需要有不同的选定值。到目前为止,我看到的所有元素都具有相同的选定值。为了实现这一点,使用了范围。因为我可能有数百个下拉列表。。。事实上,成千上万。。。这里的正确方法是什么?为每一个创建一个范围?试着让一个作用域随每个选择框而变化?下面是一个我所拥有的例子。非常感谢您的帮助。 谢谢 function MyCntrl($scope) { $scope.colors = [ {name:'black'}, {name:'red

我有多个选择框,我使用的是angular JS。每个选择框需要有不同的选定值。到目前为止,我看到的所有元素都具有相同的选定值。为了实现这一点,使用了范围。因为我可能有数百个下拉列表。。。事实上,成千上万。。。这里的正确方法是什么?为每一个创建一个范围?试着让一个作用域随每个选择框而变化?

下面是一个我所拥有的例子。

非常感谢您的帮助。
谢谢


function MyCntrl($scope) {
$scope.colors = [
    {name:'black'},
    {name:'red'},
    {yellow:'yellow'}
]
$scope.isSel = $scope.colors[1];
}

我不知道你到底想要什么。据我所知,您需要每个selectbox具有不同的值。因此,您需要将每个selectbox绑定到不同的变量

<div ng-app="myApp">
  <div ng-controller="myCtrl">
    <hr/>
    <div ng-repeat="n in [] | range: selectionsCount">
        <select ng-model="selectedValues[$index]" ng-options="c.name for c in colors"></select>
    </div>
    {{ selectedValues }}
  </div>
</div>


{{selectedValues}}
为了获得更清晰的示例,我在这里设置了selectbox count变量

angular.module('myApp', [])
    .controller('myCtrl', function ($scope) {
        $scope.colors = [
            {name: 'black'},
            {name: 'red'},
            {name: 'yellow'}
        ];
        $scope.selectedValues = [];
        $scope.selectionsCount = 5;
    })
    .filter('range', function () {
        return function(input, total) {
            total = parseInt(total);
            for (var i=0; i<total; i++)
                input.push(i);
            return input;
        };
    });
angular.module('myApp',[])
.controller('myCtrl',函数($scope){
$scope.colors=[
{name:'black'},
{name:'red'},
{name:'yellow'}
];
$scope.selectedValues=[];
$scope.selectionsCount=5;
})
.filter('range',function(){
返回函数(输入,总计){
总计=parseInt(总计);

对于(var i=0;i我不确定我是否已经弄清楚您到底想要什么。据我所知,您需要每个selectbox都有不同的值。因此,您需要将每个selectbox绑定到不同的变量

<div ng-app="myApp">
  <div ng-controller="myCtrl">
    <hr/>
    <div ng-repeat="n in [] | range: selectionsCount">
        <select ng-model="selectedValues[$index]" ng-options="c.name for c in colors"></select>
    </div>
    {{ selectedValues }}
  </div>
</div>


{{selectedValues}}
为了获得更清晰的示例,我在这里设置了selectbox count变量

angular.module('myApp', [])
    .controller('myCtrl', function ($scope) {
        $scope.colors = [
            {name: 'black'},
            {name: 'red'},
            {name: 'yellow'}
        ];
        $scope.selectedValues = [];
        $scope.selectionsCount = 5;
    })
    .filter('range', function () {
        return function(input, total) {
            total = parseInt(total);
            for (var i=0; i<total; i++)
                input.push(i);
            return input;
        };
    });
angular.module('myApp',[])
.controller('myCtrl',函数($scope){
$scope.colors=[
{name:'black'},
{name:'red'},
{name:'yellow'}
];
$scope.selectedValues=[];
$scope.selectionsCount=5;
})
.filter('range',function(){
返回函数(输入,总计){
总计=parseInt(总计);

对于(var i=0;i您需要将每个选择框绑定到它自己的作用域。您可以手动执行此操作,将每个选择框绑定到一个新对象,而不是同一个isSel,也可以使用ng repeat,如下所示:

html:


您需要将每个选择框绑定到其自己的作用域。您可以手动执行此操作,将每个选择框绑定到一个新对象而不是同一个isSel,也可以使用ng repeat,如下所示:

html:


您好,我也需要相同的种类,但当我在第一个选择框中选择“黑色”时,它应该在其他选择框中禁用,反之亦然。我如何实现这一点。谢谢我也需要相同的种类,但当我在第一个选择框中选择“黑色”时,它应该在其他选择框中禁用,反之亦然。我如何实现这一点。谢谢