0

この jQuery 関数を使用していますが、アプリケーションを実行すると、この関数が実行されません。

実際には制御はこの func. に行きますが、コードを実行するために this の中に入ることはありません。

理由は何ですか??

この関数は、ラジオのチェック・アンチェックに使用されます。

$("input[type='radio']").click(function () {
    var previousValue = $(this).attr('previousValue');
    var name = $(this).attr('name');
    if (previousValue == 'checked') {
        $(this).removeAttr('checked');
        $(this).attr('previousValue', false);
    } else {
        $("input[name=" + name + "]:radio").attr('previousValue', false);
        $(this).attr('previousValue', 'checked');
    }
});
4

1 に答える 1

0

.attr()の代わりに.prop( )を使用する

.click()の代わりに .change()

$("input[type='radio']").change(function () {
    var previousValue = $(this).prop('previousValue');
    var name = $(this).prop('name');
    if (previousValue == 'checked') {
        $(this).removeAttr('checked');
        $(this).prop('previousValue', false);
    } else {
        $("input[name=" + name + "]:radio").prop('previousValue', false);
        $(this).prop('previousValue', 'checked');
    }
});

.prop() と .attr()を読む

于 2013-10-31T06:08:38.313 に答える