我的radiobuttons上有一个点击监听器。
我需要检查在点击之前是否已经检查过radiobutton,或者是否是。
$('.GridRadio').live('click', function () {
alert($(this).is(':checked'));
});
但是,上述警报每次都是真实的。如何在点击之前查看是否已经检查过?
答案 0 :(得分: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);
});
如果您在页面加载时在HTML中的某个无线电上设置checked
属性,请添加此代码以设置该特定值的data
:
$(".GridRadio:checked").data("last-value", $(".GridRadio:checked").val())
答案 1 :(得分:0)
如果您使用的是live
,则可能会在$('.GridRadio')
之后附加$(document).ready
。如果那是对的 - 你可以在追加时进行检查。
然后当它被点击时 - 它将永远是负值。
(如果它在开头的页面中 - 您可以在重新加载页面之后进行此检查,然后再有人点击它。)