jquery - 使用jquery事件提交表单的无限循环

标签 jquery form-submit

当我 try catch 表单提交时,代码陷入循环。目的是在表单值消失之前替换它。

$('form').submit(function(e){
   e.preventDefault();
   $.ajax({
      type: "POST",
      url: 'convert.asp',
      data: $('form').serialize(),
      success: function(response){
         $('input[name="field1"]').val(response);
         $('form').submit();
      }
   });
   return false;
});

有人有什么想法吗?

更新:我最初将其绑定(bind)到按钮单击事件并且它正在工作,但我想保留提交按钮的 [enter] 键元素。看到代码有点不合逻辑,捕获按键会是一个更好的主意吗?

最佳答案

我假设您的ajax是在最终提交之前尝试验证表单。在这种情况下,只需在提交表单之前取消绑定(bind)验证功能即可。

  success: function(response){
     $('input[name="field1"]').val(response);
     // Add unbind to remove validations
     $('form').unbind().submit(); 
  }

关于jquery - 使用jquery事件提交表单的无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9812876/

相关文章:

Perl Mechanize,提交带有文件(图像)的表单?

javascript - JS : Check if text is exceeding container width

javascript - 使用 jQuery 在 html 表 td 中的特定输入字段上显示错误

javascript - 使用 jquery 添加类和淡入

jquery - .NET MVC - 表单提交导致回发而不是 onSubmit javascript 执行

javascript - JQuery 提交后禁用

javascript - flexslider 单击背景时如何显示我的照片灯箱

javascript - 如何使用 jQuery 在渲染布局中查找 "next"元素?

具有必需和禁用元素的 Html5 表单验证

java - html表单提交用java处理响应页面