2011-11-15 6 views
0

JQueryを使用して次のラベルのCSSを変更しようとしていますが、わかりません。これは実際に私のチェックボックスリスト(asp.net)からのhtmlです。これは私がこれまで持っていたものです。誰でも助けてくれますか?ありがとうございました。チェックボックスのCSSを変更する

以下のJQueryは、テーブル全体を検索し、チェックしたものだけでなく、すべてのラベルを赤くします。

$("#CheckBoxList1").click(function() { 
    $(this).find('label').removeClass('red'); 
    if ($('span').hasClass('checked')) 
     $(this).find('label').addClass('red'); 
}); 

<table id="CheckBoxList1" border="0"> 
    <tbody> 
    <tr> 
     <td> 
     <div class="checker" id="uniform-CheckBoxList1_0"> 
      <span> 
      <input id="CheckBoxList1_0" type="checkbox" name="CheckBoxList1$0" style="opacity: 0; "/> 
      </span> 
     </div> 
     <label for="CheckBoxList1_0">Mark Park</label> 
     </td> 
     <td> 
     <div class="checker" id="uniform-CheckBoxList1_1"> 
      <span> 
      <input id="CheckBoxList1_1" type="checkbox" name="CheckBoxList1$1" style="opacity: 0; "/> 
      </span> 
     </div> 
     <label for="CheckBoxList1_1">Amy Lee</label> 
     </td> 
     <td/> 
    </tr> 
    </tbody> 
</table> 

答えて

1
$("#CheckBoxList1").click(function() { 
    $(this).find('label').removeClass('red'); 
    $('span.checked').parent().next('label').addClass('red'); 
}); 
+0

これはそれでした。ありがとうございました。 – MikeB55

0

あなたがそのようにクラス/ラベルやチェックボックスにIDとアクセスを追加することができます。

$(".check").click(function() { 
    var id = $(this).attr("id").split("_"); 
    //access array of id 
    $(".label_"+id[1]).addClass("red"); 
} 

その後、あなたのhtmlにID /クラスを追加します。

<input id="CheckBoxList1_0" id="check_1" type="checkbox" class="check" name="CheckBoxList1$0" style="opacity: 0; "/> 

<label for="CheckBoxList1_0" id="label_1">Mark Park</label> 
+0

私はこれを試しましたが、うまくいきませんでした。 – MikeB55

+0

申し訳ありませんが、チェックボックスのイベントは「クリック」ではなく「変更」です。その時点でチェックされているのか、チェックされていないのかを検出する必要があるでしょう。 –

0

はこのような何かを試してみてください:

$("label[for='comedyclubs']").toggleClass("red"); 
関連する問題