-1
votes

Comment cacher toutes les divs de la même classe sauf la première classe en angularjs

J'ai besoin de cacher tout div ayant la même classe, sauf la première. J'ai une sélection, et une DIV dont les données seront modifiées de Select.Lorsque nous allons surchage, critique et majeur viendra. Mais je dois me cacher tout Rubrique «critique» sauf la première, de la même manière que j'ai besoin de cacher tout le titre (H4) de «majeur», sauf la première, si elle est plus d'une.La ces valeurs / id ou classe peuvent changer en fonction de JSON. J'ai besoin de faire dans Angularjs.Can Toute personne s'il vous plaît aidez-moi. Elle est le code. https://plnkr.co/edit/77pxskauwtg0uavsk1fz?p=preview

Html xxx

script xxx


0 commentaires

3 Réponses :


0
votes

Vous pouvez obtenir toutes les instances de la classe, à l'exception de la première utilisation des sélecteurs de niveau3

div.class: non (: premier enfant)

https://www.w3.org/tr/Selectors-3/

épouser cela avec une fonction de JS plaine ou une directive comme expliqué dans la réponse ici https://stackoverflow.com/a/27639866 / 1020735


2 commentaires

Merci pour votre aide, le nom de la classe ici arrive de manière dynamique de JSON, comment gérer ici


Vérifiez si vous pouvez utiliser construire la condition et l'évaluer. Je suis incapable de le tester maintenant



0
votes

Autant que je comprenne, vous voulez des objets uniques dans la matrice - basé sur le champ Catégorie CODE> (devrait être "Catégorie" BTW.). Le champ a donné devrait toujours être le premier.

Donc, cela devrait fonctionner: P>

  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;
  });


1 commentaires

Ici, la valeur critique ne vient qu'une seule fois, il ne devrait pas restreindre, il devrait venir selon JSON, seule la rubrique devrait être restreinte.



0
votes

Ajoutez une classe secondaire à tous les éléments DIV à affecter, par exemple pour la normalisation du style et utilisez cette classe pour affecter la visibilité.

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

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


2 commentaires

Il montrant une erreur non évalue jeton:, encore une fois si je l'utilise, il va masquer la majeure aussi, ici, je dois vous cacher en fonction de la valeur.Si Critical se rapproche de plusieurs fois, il devrait être à nouveau possible si la majeure arrive à plusieurs fois. À l'avenir, j'ajoute 3 mineurs dans la catégorie à nouveau mineur ne devrait être qu'une seule fois.


Utilisez JavaScript pour compter le nombre de vos divisions majeures et mineures. Si compte> 1, utilisez Angularjs pour ajouter une classe secondaire à ces divs inutiles.