【问题标题】:HTTP Error 405.0 - Method Not Allowed when using jquery validationHTTP 错误 405.0 - 使用 jquery 验证时方法不允许
【发布时间】:2014-06-18 15:21:13
【问题描述】:

我是编码新手,正在尝试使用“联系我们”表单构建网站,因此,我使用 jquery 验证复制了一个演示表单。想如果我能得到这个工作,那么我可以添加一些格式来使它适合我的网站。问题是表单加载正确,但是,当按下“发送联系表单”按钮时,我收到 HTTP 错误 405.0 - Method Not Allowed 错误。我好像搞不懂。

感谢您的任何建议

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8" />
    <title></title>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript"     src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script>

<script type="text/javascript">
   $(document).ready(function() {
   $("#theForm").validate();
   });
</script>

</head>

<body>
<h1>Form Validation Using jQuery and PHP | Demo</h1>
  <!--  The form that will be parsed by jQuery before submit  -->
  <div class="layout">
  <form id="theform" method="post">

   <label for="firstName">Your First Name</label>
   <input class="required" name="firstname" type="text" id="firstName">


   <label>Your Message</label>
   <textarea name="comments" rows="5" style="width:535px"></textarea>

   <input class="button" type="submit" value="SEND CONTACT FORM" />

</form>

<?php echo $output; ?>
</div>

<!-- jQuery Form Validation code -->
  <script>

  // When the browser is ready...
  $(function() {

// Setup form validation on the #register-form element
$("#register-form").validate({

    // Specify the validation rules
    rules: {
        name: "required",
        gender: "required",
        address: "required",
        email: {
            required: true,
            email: true
        },
        username: "required",
        password: {
            required: true,
            minlength: 5
        }
    },

    // Specify the validation error messages
    messages: {
        name: "Please enter your name",
    },

    submitHandler: function(form) {
        form.submit();
        }
     });

  });

  </script>
  </body>
  </html>

【问题讨论】:

  • 您没有为表单提供action,这意味着浏览器会将其发送到此表单所在的同一地址——如果那是.htm(l)页面(而不是某种处理发送数据的脚本),一些 Web 服务器被配置为不允许静态 HTML 文件的 POST 请求。

标签: jquery http-status-code-405


【解决方案1】:

当您提交时,您没有指定任何 URL。这意味着表单已提交,但您应该有一个机制来发布提交的数据,以便在验证后处理请求。这就是为什么你有一个 405 错误,那是因为你没有这个后处理。 您可以使用 JQuery AJAX 调用或表单中的经典操作属性来执行此操作。由于您已经在使用 JQuery,我认为第一个选项是强烈推荐的。

【讨论】:

  • 您能否提供一个对我有用的示例 JQuery AJAX 调用?我对编码很陌生,所以不知道那会是什么样子。谢谢!
猜你喜欢
  • 2012-06-29
  • 2012-02-23
  • 2016-06-27
  • 2016-07-16
  • 2012-08-26
  • 2022-02-09
  • 2016-03-05
  • 1970-01-01
  • 2015-06-13
相关资源
最近更新 更多