私が持っているフォームには、マスターとスレーブという2つのチェックボックスがあります。マスタがチェックされるたびに、スレーブをチェックする必要があります(スレーブは個別にクリックしてチェックを外すことができます)。フォームのロード時に、マスターはチェックするように設定されています(デフォルト値)。これは、スレーブもチェックする必要があることを意味します。Internet ExplorerでjQueryを使用してチェックボックスの状態を切り替える方法
次に、マスターの状態に基づいて手動でスレーブをチェックしたり、チェックを外したりする、いくつかのonChangeイベントハンドラがあります。これはIEで動作しない場所です。他のブラウザでも正常に動作します。なぜこれが起こっているのか分かりません。
私はjQueryとチェック画像とチェックされていない画像を単に切り替えるいくつかのCSSクラスを使用しています。これは、チェックボックスCSS(ビジュアル/グラフィック)でのみ問題になります。その値はまだそのチェックボックスに当てはまります。ここで
HTMLはかなり基本的なコード
dojo.ready(function() {
// some code removed for simplicaity sake
$("#militaryOfficial").attr("checked", true);
$("#waiveTax").attr("checked", true);
}
$('#militaryOfficial').click('change', toggleTaxWaive);
});
function toggleTaxWaive(){
if($("#militaryOfficial").is(':checked'))
{
if(!$("#waiveTax").is(':checked'))
{
$("#waiveTax").trigger("click");
}
}else
{
$("#waiveTax").attr('checked', false);
}
}
です。コメント内のリクエストごとに追加する
<div class="checkBox_Border">
<span class="cds_spanCheck" style="background: url("/images/checkbox_nonSelect.png")
no-repeat scroll 0% 0% transparent;"></span>
<span class="cds_spanCheck" style="background: url("/images/checkbox_Select.png") no-
repeat scroll 0% 0% transparent;"></span>
<input id="waiveTax" class="checkBox_innerWrap" type="checkbox" checked="checked"
value="true" name="waiveTax">
</div>
ご連絡ください。どんな助けでも大歓迎です。
あなたには、いくつかのHTMLを投稿することができますか? –
または少なくともフィドルに投稿してください。 – Oybek
あなたの投稿されたコードにいくつかの重大な構文エラーがあります:これはどこでも動作しません。私はそれがちょうどコピー貼り付けの問題だと思います。例えば。 addResetButton(); ";"の代わりにfunction "(" {"が必要です。最後に。 ただし、チェックされたプロパティを次のように設定してみてください。 some_input.prop( 'checked'、 'checked'); some_input.prop( 'checked'、 ''); のようにチェックを外します。 すべてのブラウザで動作します。おそらくIEはtrue/falseを混同しています... –