weixin_33709609 2015-12-09 11:31 采纳率: 0%
浏览 21

通过Ajax提交表单

My issue is simple -

I am submitting form using jquery and ajax . When the button is clicked the data is submitted to database .

Question - If the user clicks the submit twice there are two entries in the database . how can I solve this ?

I cannot use .one() because the submit button invokes validation function if the errors happen the data will not be submitted .So , user has to call the same function again .

Obviously I can do that with a variable on .success .but what is the best solution to this issue .

Thanks for the help.

  • 写回答

2条回答 默认 最新

  • ?Briella 2015-12-09 11:33
    关注

    You can disable the submit button once you have submitted the form. Any form can be submitted only using the Submit button. So:

    $(form).submit(function () {
      $(this).find("input:submit").prop("disabled", true);
      // You can enable it back once the AJAX request is successful.
      $.ajaxSuccess(function () {
        $(form).find("input:submit").prop("disabled", false);
      });
    });
    
    评论

报告相同问题?