Materializecss 开关元素改变事件

Materializecss switch element change event

在 materializecss 文档页面中没有 api 开关元素。我使用了有效的 onclick 事件,但触发了两次

Html

<div class="switch">
    <label>
      Off
      <input type="checkbox">
      <span class="lever"></span>
      On
    </label>
  </div>  

Jquery

$(".switch").on("click",function() {

    var status = $(this).find("input[type=checkbox]").prop('checked');
    console.log(status)

     $.ajax({
        url : url,
        type : "post",
        data : { status : status}
    })

});

// console.log output : false true or true false

当我改变开关位置时,这个事件被触发了两次。控制台日志显示交换机当前状态和更改状态。我只想获得已更改的状态。因为 ajax 调用被触发了两次并且它在我的后端发生了数据库问题。我该如何解决这个问题?

尝试做一个改变事件

  $(".switch").find("input[type=checkbox]").on("change",function() {
        var status = $(this).prop('checked');

         $.ajax({
            url : url,
            type : "post",
            data : { status : status}
        })
    });