Oninput不会触发复选框

oninput does not fire on checkboxes?

本文关键字:复选框 Oninput      更新时间:2023-09-26

以下代码不适用于所有输入元素:

$(':input').on('input', function(){
  alert('boom shakalaka');
});

它对复选框没有影响,即使它们是输入元素,选中或取消选中会改变其状态。

我可以将change事件也添加到on()中,但随后相同的事件将在其他输入字段上触发两次。

是否有任何可靠的输入状态更改事件是一致的所有表单元素?

没有一个事件是权威的,但是您可以绑定到多个事件-

$(':input').on('change keyup input', function() {
    console.log('changed');
});

注:我本想给你在一个例子中使用'boom shakalaka'打1分,但我跑题了。

    <!--Why not just use onclick ?-->
    <!--Ur-->
    <script>
    $('input#checkbox').on('click', function(){
      alert('boom shakalaka');
    });
    </script>
    <input type="checkbox" id="checkbox">
    <!--Or-->
    <input type="checkbox" onclick="anyfunction();">

我不确定你想要什么,但也许是一个简单的模糊事件?

$('input').on('blur',function(e){
      alert('event');
    });