onclick按钮获取所选值(复选框)值

时间:2017-08-10 11:33:51

标签: angularjs

<div class="chks" ng-repeat="request in pendingRequest">                                    
 <input type="checkbox" name="chk" ng-model="pendingRequest" id="chk1" ng-click="pendingUser(request.user_id)">
 <label for="chk1">{{request.first_name}} {{request.last_name}}</label>
</div>

<button type="button" ng-click="checkVal()" class="btn btn-default next-step"><span class="next-step">Resend Linking Request</span></button>

var selectUser = '';
$scope.pendingUser = function(user) {
    selectUser = user;
} 

$scope.checkVal = function() {
    if (selectUser) {
       alert(selectUser);
    } else {
       alert("CheckBox is not checked.");
    }
}

如何查看点击checkVal按钮功能是否有user_id。

on bases复选框单击获取Angularjs中的user_id。

2 个答案:

答案 0 :(得分:0)

使用数组从复选框中推送值条目。

$scope.nameSelected= [];

为复选框指定一个值。我假设这是第一个名字。

 $scope.getAllSelected = function(){          
            angular.forEach($scope.first_name,function(key,value){
                if(key)
                    $scope.nameSelected.push(value)
            });
    console.log($scope.nameSelected)
        }

从复选框输入条目中删除不需要的ng-click。 getAllSelected可以在你点击的提交按钮上单击完成。

答案 1 :(得分:0)

<div class="chks" ng-repeat="request in pendingRequest">                                    
    <input type="checkbox" name="chk" ng-model="pendingRequest" id="chk1" ng-click="pendingUser(request.user_id)">
    <label for="chk1">{{request.first_name}} {{request.last_name}}
    </label>
</div>

为什么你会重复使用与你的复选框相同的模型?你能提供一个东西吗?

$scope.checkVal = function(){

    if (selectUser) {
        alert(selectUser);
    } else {
       alert("CheckBox is not checked.");
    }
}

selectUser在那里是未定义的,它应该是单个用户(你应该在params中传递它),还是整个数组pendingRequest?

如果您想检查是否选择了每个请求,那么您只需将复选框绑定到request.selected并在check request.selected中返回 这将是这样的:

$scope.checkVal = function(){
    angular.forEach($scope.pendingRequest, function(request) {
        if (request.selected)
            alert(request)
        else
            alert("Not selected")
    })
}
相关问题