首页 > web前端 > js教程 > 如何使用 jQuery Ajax POST 提交表单而不刷新页面?

如何使用 jQuery Ajax POST 提交表单而不刷新页面?

Susan Sarandon
发布: 2025-01-04 08:28:35
原创
505 人浏览过

How Can I Submit a Form Using jQuery Ajax POST without Page Refresh?

使用 PHP 的 jQuery Ajax POST 示例

此示例演示如何使用 jQuery 的 Ajax 功能将表单数据发送到 PHP 脚本。

问题

使用传统方法提交表单时,浏览器重定向到指定的操作 URL。但是,我们希望捕获表单数据并将其提交给 PHP 脚本,而不会导致页面刷新。

jQuery 和 Ajax 解决方案

jQuery 的 .ajax 方法允许我们向服务器发出异步请求。以下是我们如何使用它来发送表单数据:

HTML:

<form>
登录后复制

jQuery:

$("#foo").submit(function(event) {
    event.preventDefault();

    var $form = $(this);
    var serializedData = $form.serialize();

    $.ajax({
        url: "/form.php",
        type: "post",
        data: serializedData,
        done: function (response, textStatus, jqXHR) {
            console.log("Hooray, it worked!");
        },
        fail: function (jqXHR, textStatus, errorThrown) {
            console.error("The following error occurred: " + textStatus, errorThrown);
        },
        always: function () {
            // Reenable form inputs
        }
    });
});
登录后复制

PHP (form.php):

// Access form data via $_POST
$bar = isset($_POST['bar']) ? $_POST['bar'] : null;
登录后复制

此解决方案使用 .done() 和 .fail() 回调处理程序分别处理成功和失败场景。无论请求的结果如何,都会调用 .always() 回调。

附加说明:

  • 可以使用 jQuery 简写 .post 代替.ajax.
  • 记得清理表单数据服务器端。
  • 此代码与 jQuery 版本 1.8 及更高版本兼容。

以上是如何使用 jQuery Ajax POST 提交表单而不刷新页面?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板