railsのformで<%= f.check_box :unspecified_capacity_flg %>というように作成すれば<input type="chekbox" ...>だけ生成されるものだと思っていたのですが、bootstrapのせいなのか下記のようになります。チェックするとaria-checkedの値がtrueになります。
チェックされた時と外れた時のイベントをjqueryで拾いたいのですが、$("icheckbox_square")を指定しても$('#event_schedule_unspecified_capacity_flg')を指定してもchangeまたはclickどちらのイベントも拾うことができません。
どのようにすれば良いのでしょうか。
追記
jsを書きました。とりあえずクリックは拾えるようになったのですが、inputフィールドの非活性はできるようになりましたがもう一度クリックした時に元に戻せません。alertは毎回動作します。
html
1<div class="icheckbox_square" aria-checked="false" aria-disabled="false" style="position: relative;"> 2 <input type="checkbox" value="1" name="event_schedule[fullhouse_flg]" id="event_schedule_unspecified_capacity_flg" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; background: rgb(255, 255, 255); border: 0px; opacity: 0;"> 3 <ins class="iCheck-helper" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; background: rgb(255, 255, 255); border: 0px; opacity: 0;"> 4 </ins> 5</div>
jquery
1$(function(){ 2 $('ins.iCheck-helper').on('click',function(){ 3 alert('aaaaa'); 4 if ($('div.icheckbox_square').attr('aria-checked')){ 5 $('input#texthoge').prop('disabled', true); 6 }else{ 7 $('input#texthoge').prop('disabled', false); 8 } 9 }); 10});
回答2件
あなたの回答
tips
プレビュー