点击后如何检查单选按钮是否已被检查?

Ken*_*nci 4 javascript jquery

我的radiobuttons上有一个点击监听器.

我需要检查在点击之前是否已检查过radiobutton,或者是否已经检查过.

$('.GridRadio').live('click', function () {
    alert($(this).is(':checked'));
});
Run Code Online (Sandbox Code Playgroud)

但是,上述警报每次都是真实的.如何在点击之前查看是否已经检查过?

Ror*_*san 5

您可以data()用来存储收音机的先前值,然后检查当前值:

$(".GridRadio").click(function() {
    var lastValue = $(this).data("last-value");
    var value = $(this).val();

    if (lastValue == value) {
        alert("Already checked");
    }
    else {
        alert("Not previously checked");
    }

    $(".GridRadio").data("last-value", "");
    $(this).data("last-value", value);
});
Run Code Online (Sandbox Code Playgroud)

示例小提琴

如果您checked在页面加载时在HTML中的某个无线电上设置该属性,请添加此代码以设置该data特定的一个:

$(".GridRadio:checked").data("last-value", $(".GridRadio:checked").val())
Run Code Online (Sandbox Code Playgroud)