Проверка ng не работает для выражения нескольких условий в угловом шаблоне js - PullRequest
0 голосов
/ 24 сентября 2019

Я хочу установить флажок «Пользователи» при выборе категории.Но когда нет ключа для категории в массиве usr_cat, предварительно отмеченные флажки не снимаются.Я хочу снять отметку со всех пользователей, когда в категории выбран менеджер.

Category = [{cid:'1',name:'Head'},cid:'2',name:'Manager'}]

users = [0:{'id':10,name:'AAAAA'},{'id':12,name:'BBBBB'},{'id':13,name:'CCCCC'},{'id':14,name:'DDDDDDDD'}]

usr_cat = ['1':[10,14]]

Список категорий

    <ul class="list-unstyled cat-lst">
      <li ng-repeat = "cat in categery" ng-click ="selectcategry(cat.cid)>{{cat.name}} </li>
    <ul>

Список пользователей

<ul class="list-unstyled usr-lst">
  <li ng-repeat = "usr in users">
    <span class=" checkbox ">
     <input class="optionChechk " id="user_{{usr.id}}" type="checkbox" ng-checked = "{{usr_cat[sele_cid] != 'null' && usr_cat[sele_cid] != 'undefined' && usr_cat[sele_cid] != '' && (usr_cat[sele_cid].indexOf(usr.id) != -1)}}" ng-value="{{usr.id}}" >
     <label for="user_{{usr.id}}" txt = "{{usr_cat[sele_cid]}}">{{usr.name}}</label>
    </span>
  <li>
</ul>

JS

$scope.selectcategry = function(cid){
    $sele_cid = cid;
}

1 Ответ

2 голосов
/ 24 сентября 2019

Привет, код содержит много ошибок

  1. В ng-атрибутах используются угловые скобки.
  2. неправильное приближение кавычек "".
  3. Неправильные стандарты именования верблюд-casing - это формат.
  4. Category - это переменная, которую вы упомянули. Повсеместно используется категоризация орфографии.ниже область действия отсутствует в sele_cid

    $scope.categery =[{"cid":'1',"name":'Head'},{"cid":'2',"name":'Manager'}];
    $scope.users = [{'id':10,"name":'AAAAA'},{'id':12,"name":'BBBBB'},  {'id':13,"name":'CCCCC'},{'id':14,"name":'DDDDDDDD'}];
    
    $scope.usr_cat = [10,14];
    $scope.selectcategry = function(cid){
    
        $scope.sele_cid = cid;
    }
    

    , пожалуйста, работайте над этим

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...