单选按钮:检查道具更改前的事件?

时间:2013-04-05 15:12:06

标签: javascript html javascript-events

我在表单中有一组单选按钮。其检查状态确定了表单后面的大量其他输入的状态。如果用户在向下移动表单并更改其值后返回到它,我需要清除大部分表单,并且用户需要重新输入许多值。我想提醒他们,这将会发生。是否有一个事件在检查的道具改变之前触发?或者我应该在点击时抛出确认,如果取消,请将值设置回来? 要清楚,我知道.click()在更改checked属性后触发。是否有一个事件在用户点击之后但在更改了checked属性之前触发了?

1 个答案:

答案 0 :(得分:3)

以下似乎有效:

<input type="radio" name="test" onclick="if(!confirm('Are you sure?'))event.preventDefault();" />

或者使用JQuery:

$(document).ready(function(){
    $("input[type='radio'][name='test']").click(function(e){
        if(!confirm('Are you sure?')) e.preventDefault();
    });
});

JQuery选择器可能只能缩减为$("[name='test']")。只需将“test”更改为单选按钮组的名称即可。此外,如果您想确保此事件在其他任何事件之前触发,您可能需要考虑mousedown事件。