2017-12-06 24 views
0

私は16行のテーブルを持ち、各行にはチェックボックスがあります。チェックボックスがチェックされているかどうかを確認する必要があります。チェックしたら、何か他のことをしてください。私は試していますが、ロジックが動作していません。動的に作成されたチェックボックスがオンになっているかどうかを確認しますか?

BtnGetは各行のボタンです。私はBtnGetにイベントを発射しています:

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

あなたは '$()行うことはできませんが( ':チェックする').is'? –

答えて

0

checkedは、チェックボックスのDOM要素ではなく、jQueryオブジェクトのプロパティです。あなたは代わりにis(':checked')を使用することもできます。

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

このようください:

$('.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>

関連する問題