【问题标题】:Jquery sending data 2 times on clickJquery在点击时发送数据2次
【发布时间】:2019-08-02 00:52:49
【问题描述】:

大家好,为什么我的 jquery 代码在我点击时会发送 2 次数据?

$(document).ready(function() {

  $('#send_message').click(function(e) {
    e.preventDefault();
    e.stopPropagation();
    var data = $("#message_form").serialize();
    $.post(
      "backend/ajax/send_message.php",
      data

    ).done(function(data) {


    }).fail(function() {

    });
  });
});

一次点击在数据库上发布2次,有人知道为什么吗?

【问题讨论】:

  • 您演示的代码没有问题。这意味着在其他地方存在冲突的问题。尝试将e.stopPropagation();e.preventDefault() 结合使用,看看是否有帮助。
  • 我应该在e.preventDefault() 下方添加e.stopPropagation(); 吗?
  • 我更新了代码,还是一样的问题
  • 我只能假设,这是这里的关键词,其他东西正在干扰或冲突。可能是重复代码等。如果您在事件处理程序中console.log('here'),它是否也会在控制台日志中出现两次?
  • 是的,我找到了问题,问题是后端而不是 jquery,谢谢!

标签: php jquery ajax post form-submit


【解决方案1】:

首先你改变 id #send_message1 和 #message_form1

$(document).ready(function() {

 $('#send_message1').click(function(e) {
   e.preventDefault();
   e.stopPropagation();
 var data = $("#message_form1").serialize();
   $.post(
    "backend/ajax/send_message.php",
    data

   ).done(function(data) {


   }).fail(function() {

 });
});

});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-04
    • 2013-06-15
    相关资源
    最近更新 更多