1

Jquery 1.7.2で機能するコードがありますが、1.9.1では機能しないようです。

今、私は何が変わったかについて興味があります。

誰かが私を助けることができますか?

http://jsfiddle.net/an9dV/

$(document).ready(function () {
$("#ikga-akkoord").hide();
$("#verzekeringen").click(function () {
    if ($("#verzekeringen").attr('checked')) {
        $("#ikga-akkoord").fadeIn();
    }


});

});

4

2 に答える 2

2

これを参照してください:

http://jsfiddle.net/an9dV/6/

$(document).ready(function () {
$("#ikga-akkoord").hide();
    $(".verzekeringen").on('click', function () {

        if ($(this).is(':checked')) {
            $("#ikga-akkoord").fadeIn();
        }
    });
});

同じページに複数の ID を持つことはできません。そのため、ID をクラスに変更します。

<div class="kiesbundelblokken">
<div id="belsms">
    <p>Verzekeringen</p>
    <div class="radiobuttonsverzekeringen">
        <label>
            <input class="verzekeringen" type="radio" name="verzekeringen" value="normaal"
            />ACE Toestelverzekering</label>
        <label>
            <input class="verzekeringen" type="radio" name="verzekeringen" value="plus"
            />ACE Toestelverzekering Plus</label>
        <label id="ikga-akkoord">
            <input id="akkoordvoorwaarden" type="checkbox" name="akkoordvoorwaarden"
            value="akkoordvoorwaarden" />Ik ga akkoord met deze voorwaarden</label>
    </div>
</div>

編集

@soyuka コメントに基づいて、attr('checked') を .is(':checked') に変更しました。より良い、よりクリーンな方法。.attr('checked') は、何かがチェックされていない場合は undefined を返すため、無効です。

于 2013-03-15T08:45:58.320 に答える
1

isあなたの代わりに使用する必要がありますattr

$("#verzekeringen").click(function () {
    if ($("#verzekeringen").is(':checked')) {
        $("#ikga-akkoord").fadeIn();
    }


});

更新されたfiddleを参照してください。

于 2013-03-15T08:45:14.263 に答える