jQuery:为什么没有单选按钮改变事件处理程序重新触发?

时间:2018-03-09 23:37:33

标签: jquery events radio-button

我有一组单选按钮......

<input type="radio" name="option1" value="foo">
<input type="radio" name="option1" value="bar">

当选中时将使用confirm()询问用户是否确实要检查该单选按钮或取消。如果用户取消,我希望取消选中单选按钮,以便用户可以在必要时重复相同的过程:

    $("input [type=radio]").change(function() {
        if(confirm_canceled) {
            $(this).prop("checked", false).trigger('change');
        }
    });

单选按钮未选中,但如果再次单击单选按钮,则不会激活事件处理程序。我想这是因为change()会触发值的更改并且没有任何更改,所以我该如何解决这个问题呢?

编辑:问题是使用确认而不是confirm_canceled * face palm *

导致的错误

1 个答案:

答案 0 :(得分:0)

这是一个基本的例子。

0
$('input[type=radio]').on('change', function () {
	var checked = confirm('Are you sure?');
  if (!checked) {
    $(this).prop('checked', false);
  }
});