2017-12-06 2 views
0

Ich habe eine Tabelle mit 16 Zeilen und jede Zeile enthält Kontrollkästchen. Ich muss prüfen, ob das Kontrollkästchen aktiviert ist oder nicht. Wenn check dann etwas anderes tun. Ich versuche, aber Logik funktioniert nicht:Prüfen, ob das Kontrollkästchen "Dynamisch erstellt" aktiviert ist oder nicht?

BtnGet ist ein Knopf in jeder Reihe. Ich bin Brennen Ereignis auf BtnGet:

$('.btnGet').each(function (i, obj) { 
    if ($(obj) 
     .closest("tr") 
     .children("td:nth-child(3)") 
     .find("input[type = checkbox]") 
     .checked) 
     { 
      console.log("Working"); 
     } 
} 
+0

Kannst du nicht tun '$ () .ist (': checked')'? –

Antwort

0

checked eine Eigenschaft des Checkbox DOM-Element ist, nicht das jQuery-Objekt. Sie könnten is(':checked') statt:

$('.btnGet').each(function(i, obj) { 
    if ($(obj).closest("tr").find("td:nth-child(3) :checkbox").is(':checked')) { 
    console.log("Working"); 
    } 
} 
0

wie folgt tun:

$('.btnGet tr').each(function (i, obj) { 
 
    if($(this).children().eq(2).find("input[type = checkbox]").is(":checked")){ 
 
    console.log('checked'); 
 
    }else{ 
 
    console.log('not checked'); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table class="btnGet" style="width:500px;height:500px;border:1px solid;"> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" checked></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" ></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" checked></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" checked></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" ></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" ></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" checked></td></tr> 
 
<tr><td>1</td><td>2</td><td><input type="checkbox" checked></td></tr> 
 
</table>

Verwandte Themen