event.preventDefault();在laravel框架5.8.17中的ajax中不工作

时间:2019-06-19 07:27:41

标签: jquery ajax laravel-5 preventdefault

您好,它通常可以在其他地方使用,但是此特定的AJAX帖子preventDefault()对我不起作用。

我正在动态获取一些值,我将该值设置为表单的隐藏字段,然后触发ajax Post到另一个ROUTE。

以下是我需要任何帮助或帮助的代码部分。

SELECT * FROM MyTable WHERE Column1 LIKE '%'||Column2||'%' 

我尝试了不同的方法来防止表单提交并导航到另一个页面。

<!--Init_Form_ST-->
<div style="display:none;">
  <form id="frm_init" name="frm_init" action="{{ route('init_message') }}" method="POST"   >
    {{ csrf_field() }}
    {{ method_field('POST') }}
    <input type="hidden" name="init_messageType" id="init_messageType" value="chatMessage" >
    <input type="hidden" name="init_idempotencyid" id="init_idempotencyid" value="" >
    <input type="hidden" name="init_receveruserid" id="init_receveruserid" value="" >
    <input type="hidden" name="init_lang" id="init_lang" value="" >    
    <?php /*?><input type="submit" name="init_submit" id="init_submit" value="init_sub" ><?php */?>
    <button type="submit" name="init_submit" id="init_submit" ></button>
  </form>        
</div>
<!--Init_Form_EN-->

指针转到第一警报,并等待按钮单击。之后,指针显示第二警报,但无需等待页面即可导航到路由路径。

我什至通过删除所有Ajax代码进行了测试。但是第三警报永远不会触发

我已经测试了以下选项

alert("1st Alert - Before Click Trigger");
$("#init_submit").trigger('click');
alert("2nd Alert - After Click Trigger");

$("#frm_init").on('submit', function(event) {
  event.preventDefault();

  alert("3rd Alert - Into submit"); // <== It never comes here

  var init_formdata = new FormData(this);
  var init_msg_route = "{{ route('init_message') }}";

  $.ajax({
    headers: {
      'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    },
    url: init_msg_route,
    dataType: 'json',
    cache: false,
    async: false,
    type: "POST",
    data: init_formdata,
    contentType: false,
    processData: false,
    success: function(result) {
      alert("Success");
    },
    error: function(jqxhr, status, exception) {
      alert('Exception:', exception);
    }
  });
});

1 个答案:

答案 0 :(得分:1)

我发现了一个愚蠢的错误。 我在触发“提交表单”之前触发了“提交表单”

这可能会帮助像我一样犯一些愚蠢错误的人。 谢谢大家的帮助。

enter image description here