javascript - Jquery AJAX 404 form.php 未找到

标签 javascript php jquery

我正在尝试使用 Jquery 和 PHP 连接一个简单的 HTML 表单。但是,我遇到了以下错误:

jquery.min.js:2 POST http://127.0.0.1:8887/form.php 404 (Not Found)

script.js

$("#form").submit(function (e) {
    e.preventDefault();
  }).validate({
    rules: {
      name: {
        required: true,
      },
      email: {
        required: true,
        email: true
      },
      subject: {
        required: true,
      },
      message: {
        required: true,
      },
    },
    submitHandler: function () {
      // alert("enter");
      var form = $('#form');
      var formData = $(form).serialize();
      $.ajax({
        type: 'POST',
        url: '../form.php',
        data: formData
      }).done(function (response) {
        // Clear the form.
        $('#name').val('');
        $('#email').val('');
        $('#message').val('');
      });

      return false;  //This doesn't prevent the form from submitting.
    }
  });

目录结构:

16/07/2018  03:22 AM    <DIR>          .
16/07/2018  03:22 AM    <DIR>          ..
23/06/2018  05:48 PM    <DIR>          .git
14/05/2018  03:37 PM                11 .gitignore
21/06/2018  03:00 PM    <DIR>          .sass-cache
14/05/2018  03:09 PM    <DIR>          .vscode
21/06/2018  03:00 PM    <DIR>          bulma
14/05/2018  03:09 PM    <DIR>          content
14/05/2018  03:09 PM    <DIR>          css
16/07/2018  03:22 AM                66 form.php
15/07/2018  06:57 PM    <DIR>          img
16/07/2018  03:03 AM            31,166 index.html
12/05/2018  07:55 PM                45 index.php
15/07/2018  06:57 PM    <DIR>          js
16/07/2018  03:22 AM    <DIR>          php
27/05/2018  12:16 PM               378 README.md

js 文件夹包含 script.js 文件,该文件调用目录中的 form.php。如何正确地将 ajax 脚本指向正确的 php 文件?如果有帮助的话,我正在使用 Chrome Webserver 插件来模拟 Web 服务器,因为 Chrome 不允许 php 脚本将 index.html 作为文件打开。

最佳答案

这似乎是 Chrome Web 服务器的问题,我不确定它是否可以处理 php 文件并提供服务。

尝试使用内置的 php 服务器来服务您的 form.php:

在目录结构中执行:

php -S localhost:80 

然后,更改 jquery 脚本中的 URL:

  submitHandler: function () {
      // alert("enter");
      var form = $('#form');
      var formData = $(form).serialize();
      $.ajax({
        type: 'POST',
        url: 'http://localhost/form.php',
        data: formData
      }).done(function (response) {
        // Clear the form.
        $('#name').val('');
        $('#email').val('');
        $('#message').val('');
      });

      return false;  //This doesn't prevent the form from submitting.
    }

关于javascript - Jquery AJAX 404 form.php 未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51351552/

相关文章:

javascript - 使用 Javascript 在 iPad 上处理待机

javascript - Typescript with Webpack - 您可能需要适当的加载器来处理此文件类型,当前没有配置加载器来处理此文件

php - mysql中如何求多个表的交集

jquery - 排除嵌套子项

javascript - 复制表中的选择元素

Javascript点击事件每次点击都会加倍

javascript - 在 javascript for 循环的每次迭代中声明一个新的唯一变量的好方法是什么?

php - 如果条件在多行中匹配,则从映射表中获取数据

javascript - 将具有路径作为值的 php 变量传递给 javascript

jQuery 按 1 个 td 的值对表行进行排序