Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.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
Javascript 如何在angularjs中隐藏同一类中除第一类以外的所有div_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 如何在angularjs中隐藏同一类中除第一类以外的所有div

Javascript 如何在angularjs中隐藏同一类中除第一类以外的所有div,javascript,html,angularjs,Javascript,Html,Angularjs,我需要隐藏除第一个类以外的所有具有相同类的div。这里我有一个select,并且一个div的数据将在select发生变化时出现。当我们再次搜索时,关键和主要将出现。这里我需要隐藏除第一个类外的所有“关键”标题,类似地,我需要隐藏除第一个类外的所有“主要”标题(h4),在这里,这些值/id或类可能会根据json进行更改。我需要用angularjs做。有人能帮我吗。这是代码。 HTML 您可以使用Level3选择器获取类的所有实例,但第一个实例除外 div.class:不是(:第一个孩子) 将其

我需要隐藏除第一个类以外的所有具有相同类的div。这里我有一个select,并且一个div的数据将在select发生变化时出现。当我们再次搜索时,关键和主要将出现。这里我需要隐藏除第一个类外的所有“关键”标题,类似地,我需要隐藏除第一个类外的所有“主要”标题(h4),在这里,这些值/id或类可能会根据json进行更改。我需要用angularjs做。有人能帮我吗。这是代码。

HTML
您可以使用Level3选择器获取类的所有实例,但第一个实例除外

div.class:不是(:第一个孩子)


将其与简单的js函数或指令结合起来,如这里的答案所述

据我所知,您希望数组中有唯一的对象-基于字段
categoty
(顺便说一句,应该是“category”)。产出的土地总是第一位的

因此,这应该是可行的:

  var groups = [{
    name: 'Malaria',
    symptom: 'fever',
    categoty: 'critical',
    id: '1'
  }, {
    name: 'cancer',
    symptom: 'diesease',
    categoty: 'critical',
    id: '3'
  }, {
    name: 'fever',
    symptom: 'diesease',
    categoty: 'critical',
    id: '3'
  }, {
    name: 'Cold',
    symptom: 'colds',
    categoty: 'major',
    id: '2'
  }]

  var existing = {};
  $scope.groups = groups.filter(function(entry) {
    if (existing[entry.categoty]) {
      return false;
    }
    existing[entry.categoty] = true;
    return true;
  });

将次要类添加到所有受影响的div元素,例如用于样式标准化,并使用该类影响可见性

<div class="status" ng-repeat="emp in groups" ng-attr-id="{{emp[attr]}}">
</div>

div.status:not(:first-child) {
  display: none;
}

部门状态:非(:第一个孩子){
显示:无;
}

感谢您的帮助,这里的类名来自json,如何处理这里检查您是否可以使用构造条件并评估它。我无法测试它,因为临界值只出现一次,它不应该限制,它应该按照json的要求出现,只有标题应该限制。它显示错误未预测标记:,再次如果我使用它,它还将隐藏主要,这里我需要根据值隐藏。如果关键值出现多次,它应该再次出现,如果主要值出现多次,它应该显示一次。如果将来我在类别中再次添加3个次要值,次要值应该只出现一次。使用JavaScript计算主类和次要类div的数量。如果count>1,则使用AngularJS向这些不必要的div添加第二个类。
  var groups = [{
    name: 'Malaria',
    symptom: 'fever',
    categoty: 'critical',
    id: '1'
  }, {
    name: 'cancer',
    symptom: 'diesease',
    categoty: 'critical',
    id: '3'
  }, {
    name: 'fever',
    symptom: 'diesease',
    categoty: 'critical',
    id: '3'
  }, {
    name: 'Cold',
    symptom: 'colds',
    categoty: 'major',
    id: '2'
  }]

  var existing = {};
  $scope.groups = groups.filter(function(entry) {
    if (existing[entry.categoty]) {
      return false;
    }
    existing[entry.categoty] = true;
    return true;
  });
<div class="status" ng-repeat="emp in groups" ng-attr-id="{{emp[attr]}}">
</div>

div.status:not(:first-child) {
  display: none;
}