2016-09-05 8 views
-2

Wie zählen kann ich die Anzahl der ausgewählten Kontrollkästchen aus dieser Tabelle zählen:Wie die Gesamtzahl der ausgewählten Kontrollkästchen in einer HTML-Tabelle

<tbody> 
    <tr> 
     <td> 
      <center> 
       <form> 
        <input type="checkbox" value="<?php echo $rws['amount']; ?>" /> 
       </form> 
      </center> 
     </td> 
    </tr> 
</tbody> 
+0

entweder gibt es nur eine oder Sie haben ungültige HTML Markup. Ein Formular kann nicht in einer Tabellenzelle beginnen und in einem anderen enden - nicht, dass das obige Formular sogar geschlossen ist. – RamRaider

+1

Mit jquery ist es einfach zu machen: '$ ('table'). Find (': checkbox'). Length ' – yceruto

Antwort

2

querySelectorAll können Sie jedes CSS-Selektor passenden erhalten eine Liste von Elementen, Sie können damit die Kontrollkästchen aktivieren. Sie können Array.prototype.reduce darauf verwenden, um die Anzahl der geprüften zu zählen. Also:

var count = Array.prototype.reduce.call(
    document.querySelectorAll("input[type=checkbox]"), 
    function(sum, cb) { 
     return sum + cb.checked ? 1 : 0; 
    }, 
    0 
); 

Der „Array-like“ Teil this answer erklärt, dass die Verwendung von Array.prototype.reduce, die uns die Liste von querySelectorAll behandeln läßt, als ob es ein Array war, wenn es nicht ist.

MDN hat eine Beschreibung, wie reduce funktioniert.

+0

ordentliches bisschen Code - Ich mag es! – RamRaider

+0

Wie kann ich die Gesamtmenge aller ausgewählten Boxen hinzufügen? –

Verwandte Themen