2016-11-12 19 views
2

変更イベントのチェックボックスを確認する最も簡単な方法を探しています。jqueryで動的チェックボックスを確認する方法

私は

PHP PHPスクリプトでチェックボックスを作成しました:私は私のコードで間違って何をしました

$('#servicesCheck :checkbox').change(function() { 
    // DO SOMETHING 
}); 

<div class="form-group"> 
    <div class="col-md-12 servicesCheck" style="margin-top:-10px"> 
     <?php 
     foreach ($data["languageSchool"]["services"] as $service) { 
      $required = ""; 
      $checked = ""; 
      if ($service["is_required"] == "1") { 
       $required = "disabled"; 
       $checked = "checked"; 
      } 
      echo "<div class='checkbox " . $required . "'>"; 
      echo " <label><input id='services' type='checkbox' " . $checked . " " . $required . " value='" . $service["price"] . "'>" . $service["name"] . "</label>"; 
      echo "</div>"; 
     } 
     ?> 
    </div> 
</div> 

にjqueryのを。

+0

「servicesCheck」とは何ですか? – Xorifelse

+0

@ Xorifelse私はクラスとidのjqueryセレクタを混乱させました。 servicesCheckはクラスです。 –

答えて

1

jQueryセレクタが間違っていると思います。あなたのHTML内 'servicesCheckは'

$('.servicesCheck input:checkbox').change(function() { 
// DO SOMETHING 
}); 

が動作するはずです、クラスではないIDです。けれども

:チェックボックスがjQuery documentationの作品は言う:「タグ名またはいくつかの他のセレクタと、それに先行することをお勧めします」

+0

ああ、それは私を逃れました。答えてくれてありがとう。 –

0

PHPコードは、同じIDで複数のチェックボックスを生成します。自動インクリメントの接尾辞を追加して変更してください。また、このコードでは利用できないjQueryコードで#servicesCheckを使用しました。

+0

あなたはそれを直すだけです。 echo "

0

個人的に私は、ソースコード内に存在する必要があるため、複数のチェックボックスが異なる処理を必要とし、同じものではない可能性があります。

1つしかない場合は、Alvaro'sの回答で十分です。

$('#myloginform input[name=mycheckboxname]:checked').change(function(){ 
    console.log($(this).attr('name')); 
}); 
関連する問題