根据true或false将值推入数组

尼科莱塔·威尔斯康(Nicoleta Wilskon)

如果glyphicon close为true ,则需要将$scope.fnamea值分别$scope.lnamea作为名字,姓氏和$scope.snamea姓氏来推送$scope.afname我尝试这样做,但是每次我的值都只会是名字,因为我的名字已经具有$scope.afnameTrue了,数组也允许重复。

HTML:

<div class="row">                            
    <input  type="text" name="fname" ng-model="model.firstName" "/>    
    <a class="menu-toggle" ng-click="hiddenFields(afname = afname?false:true)" class="btn btn-default" ng-model="model.fnamea">
    <i class="glyphicon" ng-class="{'glyphicon-eye-open':!afname, 'glyphicon-eye-close':afname}"></i></a>
 </div>  

<div class="row">
    <div>                      
        <input  type="text" name="sname" ng-model="model.surname" "/>
        <a class="menu-toggle" ng-click="hiddenFields(sfname = sfname?false:true)" class="btn btn-default" ng-model="model.snamea">
        <i class="glyphicon" ng-class="{'glyphicon-eye-open':!sfname, 'glyphicon-eye-close':sfname}"></i></a>
    </div>  
    <div>

        <input  type="text" name="lname" ng-model="model.lastName" "/>

        <a class="menu-toggle" ng-click="hiddenFields(lfname = alname?false:true)" class="btn btn-default" ng-model="model.lnamea">
        <i class="glyphicon" ng-class="{'glyphicon-eye-open':!alname, 'glyphicon-eye-close':alname}"></i></a>
    </div>                        
</div>

JS:

<script>$('.menu-toggle').click( function(){
    $(this).find('i').toggleClass('glyphicon glyphicon-eye-open').toggleClass('glyphicon glyphicon-eye-close');
});</script>
$scope.fnamea = "firstname";
$scope.lnamea = "lastname";
$scope.snamea ="shortname";

$scope.hiddenFields = function(){

  if($scope.afname == true) {
                    $scope.hide.push($scope.fnamea);
                    console.log($scope.hide);
                arr[index]++; 
                }

         else  if ($scope.alname == true) {
                    $scope.hide.push("lastname");
                    console.log($scope.hide);
                }
             else  if ($scope.asname == true) {
                    $scope.hide.push("surname");
                    console.log($scope.hide);
                }
            }

            if($scope.adob == "true") {
                    $scope.hide.push("dob");
                    console.log($scope.hide);
                }
};
原因

我希望您正在寻找这样的东西:

  <input  type="text" ng-model="user.fname" ng-disabled="!allow.fname"/>  
  <input  type="checkbox" ng-model="allow.fname" /> 
  <hr/>
  <input  type="text" ng-model="user.lname" ng-disabled="!allow.lname"/>  
  <input  type="checkbox" ng-model="allow.lname" /> 
  <hr/>
  <input  type="text" ng-model="user.sname" ng-disabled="!allow.sname"/>  
  <input  type="checkbox" ng-model="allow.sname" /> 

function MyCtrl($scope) {
    $scope.user = {
      fname: 'First name',
      lname: 'Last name',
      sname: 'Surname'
    };

    $scope.allow = {
      fname : true,
      lname : true,
      sname : true,
    };

    $scope.users = [];

    $scope.push = function(){
        var user = {}, 
            allow = $scope.allow;
      Object.keys(allow).forEach(function(key){
        allow[key] ? user[key] = $scope.user[key] : null;
      });
      $scope.users.push(user);
    } 
}

Fiddle example

谢谢!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章