Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

223
Visualizações
Contador de casilla de verificación para div

Necesito agregar tres divs con múltiples casillas de verificación en cada div. Logré agregar un contador a las casillas de verificación seleccionadas en divs individuales. Quiero agregar un contador que cuente los divs en los que se seleccionan las casillas de verificación.

Código HTML

 <div class="container"> <div class="firstCheckbox" (click)="dis2=true"> <div *ngFor ="let o of options" > <input [disabled]="dis1" type="checkbox" [(ngModel)]="o.checked" (ngModelChange)="changed()"> {{ o.name }} </div> <p>Total O-Items Checked :- {{count}}</p> </div> <div class="secondCheckbox" (click)="dis1=true" > <div *ngFor ="let p of options1" > <input [disabled]="dis2" type="checkbox" [(ngModel)]="p.checked" (ngModelChange)="changed1()"> {{ p.name }} </div> <p>Total P-Items Checked :- {{count1}}</p> </div>

Código componente.ts

 export class CheckComponent implements OnInit { count: number; count1: number; dis1:boolean; dis2:boolean; options : any = [ { id:0 , name : 'A' }, { id:1 , name : 'B' }, { id:2 , name : 'C' }, { id:3 , name : 'D' }, { id:4 , name : 'E' }, { id:5 , name : 'F' }, ]; options1 : any = [ { id:0 , name : 'A' }, { id:1 , name : 'B' }, { id:2 , name : 'C' }, { id:3 , name : 'D' }, { id:4 , name : 'E'}, { id:5 , name : 'F' }, ]; constructor() { } changed(){ this.count = 0; this.options.forEach(item => { if (item['checked']) { this.count = this.count + 1; } }) } changed1(){ this.count1 = 0; this.options1.forEach(item => { if (item['checked']) { this.count1 = this.count1 + 1; } }) } ngOnInit(): void { } }

Quiero agregar un contador de modo que si la casilla de verificación de div class="firstCheckbox" está marcada, entonces divCounter = divCounter+1 y si la casilla de verificación de div class="secondCheckbox" está seleccionada, entonces divCounter se incrementa solo. Básicamente, un contador externo que me da un recuento de divs activos en este proceso.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Obtenga los divs, luego obtenga sus casillas de verificación marcadas

 document.querySelectorAll("div").forEach(function(div) { div.setAttribute("checkedBoxes", div.querySelectorAll("input[type=checkbox]:checked").length); });
about 4 years ago · Juan Pablo Isaza Relatório

0

Su código puede ser refactorizado y optimizado, pero no voy a entrar en esto. Habrá múltiples formas de lograr lo que quieres, te daré la más rápida que se me ocurra. Podría usar Set que almacena los valores únicos

 get activeDivsCount: number{ return this.activeDivs.size; } activeDivs = new Set(); changed(){ this.count = 0; this.options.forEach(item => { if (item['checked']) { this.count = this.count + 1; } }); if(this.count > 0) this.activeDivs.add('div1'); else this.activeDivs.delete('div1'); } changed1(){ this.count1 = 0; this.options1.forEach(item => { if (item['checked']) { this.count1 = this.count1 + 1; } }); if(this.count1 > 0) this.activeDivs.add('div2'); else this.activeDivs.delete('div2'); }

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda