Javascript 从返回 false 的函数触发自定义事件

Javascript custom event fire from a function with returning false

我有以下表单代码,我必须阻止表单提交和触发自定义事件。我还在触发该事件的提交函数上写了一个 Javascript,然后 return false。如果我做错了,请帮助。

形式html:

   <form class="form-inline" action="" name="filterform">
      <div class="row">
        <?php foreach($formatted_post_type as $filters){?>
        <div class="checkbox">
          <label class="checkbox-inline" style="line-height:40px;">
            <input type="checkbox" name="filters[posttype][]" value="<?php echo $filters['slug']?>" onclick="refresh_posttypes();" />
            <?php echo $filters['name']?></label>
        </div>
        <?php }?>
      </div>
      <div class="row">
        <div class="col-md-12">
          <input type="submit" class="btn btn-primary btn-sm" value="Apply">
        </div>
      </div>
    </form>

javascript代码:

jQuery(document).ready(function(){
  jQuery('form[name="filterform"]').on('submit', function(e){
      jQuery(document).triggerHandler('favorites-update-all-lists', function(e){
           e.preventDefault();
    });
    return false;
    });
  });

试试这个

$(function() {

    $('form[name="filterform"]').on('submit', function(e) {
        $(document).triggerHandler('favorites-update-all-lists', function() {
            e.preventDefault();
        });
    });

});

您在两个匿名函数中都使用了 e

尝试在提交处理程序之后移动 e.preventDefault();

jQuery(document).ready(function(){
  jQuery('form[name="filterform"]').on('submit', function(e){
      e.preventDefault();

      jQuery(document).triggerHandler('favorites-update-all-lists', function(e){

      });
    return false;
    });
  });