Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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
Html 使用AngularJS从按钮单击的下拉列表中选择所有选项_Html_Angularjs - Fatal编程技术网

Html 使用AngularJS从按钮单击的下拉列表中选择所有选项

Html 使用AngularJS从按钮单击的下拉列表中选择所有选项,html,angularjs,Html,Angularjs,我想从ng单击上的HTML下拉列表中选择所有值。这是我的HTML代码 <select multiple ng-model="selectedToPostalCodes" ng-options="items.postalcode for items in toPostalCodes"> <option style="display:none;"></option> </select> <input type="button" v

我想从
ng单击
上的HTML下拉列表中选择所有值。这是我的HTML代码

<select multiple ng-model="selectedToPostalCodes"
    ng-options="items.postalcode for items in toPostalCodes">
    <option style="display:none;"></option>
</select>
<input type="button" value="Select All" ng-click="selectall()">

所以我想要实现
selectall()
函数

谢谢

您可以这样尝试:

$scope.selectall = function() {
    var allOptions = [];
    // First get all codes as list
    angular.forEach($scope.toPostalCodes, function(item) {
        allOptions.push(item.postalcode);
    });

    // And then assign the values to the scope model
    $scope.selectedToPostalCodes = allOptions;
};
你可以这样试试::


这是个好答案。但用户如何知道他选择了所有选项?如果我们选择一个选项,它会高亮显示为蓝色,我还想高亮显示select中的所有字段。当所有字段都被选中时,这将自动反映在
标记上。这不是真的吗?或者你可以显示一条小消息,几秒钟后把它隐藏起来。
fiddleApp.controller('Main', ['$scope', function($scope) {
 $scope.toPostalCodes = [
        {postalcode:1, name:"Japan"},
        {postalcode:4, name:"USA"}
    ]; 
 $scope.selectedToPostalCodes = [];  
$scope.selectall = function(){        
     $scope.selectedToPostalCodes = []; 
     angular.forEach($scope.toPostalCodes, function(item){
         $scope.selectedToPostalCodes.push( item.postalcode);
     }); 
 }   
}]);