【问题标题】:Submitting a form causes 412 error提交表单导致 412 错误
【发布时间】:2011-03-19 09:50:41
【问题描述】:

我正在开发一个简单的、一个字段的表单,它可以与 AJAX 一起使用。每次我提交表单然后刷新页面时,都会收到 412 错误 (Precondition failed: The precondition on the request for the URL /user.html evaluated to false.)。最终这个表单将是 AJAX,但现在,我只是使用 jQuery 来接收提交按钮上的点击事件,然后给我一个警报。这很简单,我以前用这种形式做过很多次。关于这里发生了什么的任何想法?

我在 Snow Leopard 上的 MAMP 上本地运行该网站。

澄清一下,当我不提交表单并刷新时,我不会收到错误消息,因此它肯定与 html 或 jQuery 有关。 (但我看不出其中任何一个是如何产生这个错误的)。

编辑:html代码:

<form id="add-form" method="post" action="">
        <input type="text" name="add-input" value="http://example.com" />
        <input type="submit" name="add-submit" value="Add" />
</form>

jQuery:

$(document).ready(function() {

$('input[type="submit"]').click(function() {

    link = $('input[name="add-input"]').val();
    alert(link);

   return false;
});

});

【问题讨论】:

  • 你能分享你的代码段吗?
  • 为什么要引用#?为了成功,该操作不应该为空吗? BTW,你不应该取消正常的提交点击事件吗??
  • 我尝试了你的两个建议,并修改了上面的代码,但都没有解决问题。
  • @williamg 需要处理的事件是$('#add-from').submit(function(){}),因为您可以在不点击提交按钮的情况下按回车提交表单。这也是阻止提交表单的事件。

标签: jquery html apache forms


【解决方案1】:

在我看来更像是服务器问题。

您的服务器上是否启用了 mod_security?

一些托管公司使用 mod_security 或其他类似过滤器 阻止 Web 表单提交 包含某些关键词或 可疑符号,为了 防止评论垃圾邮件或黑客尝试。 有时这些安全规则可以 阻止合法请求。 1

当您重新加载页面时,这可能会被 mod_security 检测为垃圾评论并导致此 HTTP 响应。

【讨论】:

  • 编辑:好的,我想通了,这解决了问题!谢谢!
  • @willianmg,请问您如何在服务器中设置 mod_security?在互联网上搜索后无法找到此设置。谢谢
猜你喜欢
  • 1970-01-01
  • 2019-06-20
  • 1970-01-01
  • 2012-09-14
  • 1970-01-01
  • 2021-06-10
  • 2013-02-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多