jQuery ajax提交Form表单实例(附demo源码)

下面我将详细讲解“jQuery ajax提交Form表单实例(附demo源码)”的实现方法和步骤。

步骤一:准备工作

在项目中引入jQuery库,以及form表单提交所需要的相关资源。比如在head标签中引入:

<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<!--form表单提交所需资源-->
<script src="https://cdn.bootcdn.net/ajax/libs/jquery.form/4.3.0/jquery.form.min.js"></script>

步骤二:html代码编写

在body中编写一个表单,设置id为form1,并设置action和method属性,示例代码如下:

<form id="form1" action="/submit" method="post">
    <input type="text" name="username" placeholder="用户名" required>
    <input type="password" name="password" placeholder="密码" required>
    <button type="submit">提交</button>
</form>

步骤三:jquery代码编写

  1. 引入jquery库
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
  1. 绑定表单提交事件,并使用ajax进行表单提交和数据接收,代码如下:
$(function(){
    $('#form1').submit(function(){
        $(this).ajaxSubmit({
            type:'post',
            url:'/submit',
            success:function(data){
                // 数据返回后的处理程序
            },
            error:function(XmlHttpRequest,textStatus,errorThrown){
                console.log(XmlHttpRequest);
                console.log(textStatus);
                console.log(errorThrown);
            }
        });
        return false;
    });
});

具体解释如下:

  • 首先使用jQuery的submit()函数来绑定表单提交事件;
  • 通过ajaxSubmit方法,进行表单提交,其中type设置为post,url设置表单提交的地址,success回调函数处理成功时返回的数据,error回调函数用于处理提交发生错误的情况;
  • 最后,通过return false阻止表单的默认提交事件。

示例一:表单序列化

在上面的代码中,使用到jquery form插件的ajaxSubmit方法,其中可以传入参数。我们把这个参数对象进行解析,其中有个大家经常用的属性是 data。

data 表示表单的序列化字符串,即 name1=value1&name2=value2&name3=value3 的字符串。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery ajax提交Form表单实例(附demo源码)</title>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery.form/4.3.0/jquery.form.min.js"></script>
</head>
<body>
    <form id="form1" action="/submit" method="post">
        <p>姓名:<input type="text" name="name" value="Miao"></p>
        <p>邮箱:<input type="text" name="email" value="miao@test.com"></p>
        <p>网址:<input type="text" name="url" value="www.miao.cn"></p>
        <p>内容:<textarea name="content">你好</textarea></p>
        <p><input type="submit" value="提交"></p>
    </form>
    <script>
        $(function(){
            $('#form1').submit(function(){
                var data = $(this).serialize();
                console.log(data);
                return false;
            });
        });
    </script>
</body>
</html>

当我们填写表单后,点击提交按钮,控制台会打印出以下内容:

name=Miao&email=miao@test.com&url=www.miao.cn&content=%E4%BD%A0%E5%A5%BD

以上内容即为表单中各个控件的 name 和 value 组成的序列化字符串,其中的 content 控件中的中文字符“你好”会通过 encodeURIComponent() 方法进行编码。

示例二:使用回调函数处理返回数据

可以通过 success 和 error 参数来设置 ajax 的成功和出错时的回调函数。在本示例中,我们使用 success 函数来处理服务器的返回数据。本示例在服务器返回数据"提交成功"后,将显示一条提示信息。示例代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery ajax提交Form表单实例(附demo源码)</title>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery.form/4.3.0/jquery.form.min.js"></script>
</head>
<body>
    <form id="form1" action="/submit" method="post">
        <p>姓名:<input type="text" name="name" value="Miao"></p>
        <p>邮箱:<input type="text" name="email" value="miao@test.com"></p>
        <p>网址:<input type="text" name="url" value="www.miao.cn"></p>
        <p>内容:<textarea name="content">你好</textarea></p>
        <p><input type="submit" value="提交"></p>
    </form>
    <div id="msg"></div>
    <script>
        $(function(){
            $('#form1').submit(function(){
                $(this).ajaxSubmit({
                    type:'post',
                    url:'/submit',
                    success:function(data){
                        $('#msg').html(data); // 显示提示信息
                    },
                    error:function(XmlHttpRequest,textStatus,errorThrown){
                        console.log(XmlHttpRequest);
                        console.log(textStatus);
                        console.log(errorThrown);
                    }
                });
                return false;
            });
        });
    </script>
</body>
</html>

在本示例中,服务器在成功处理请求后,向客户端返回字符串:"提交成功"。客户端的 success 回调函数将把这个字符串置于 id 为 msg 的 div 中显示出来。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQuery ajax提交Form表单实例(附demo源码) - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQuery事件 delegate()使用方法介绍

    jQuery事件 delegate()使用方法介绍 什么是delegate()方法? delegate()方法是jQuery事件中常用的一种事件绑定方法,可以在父元素上绑定事件,对于其子元素的相应事件响应。 delegate()方法的语法格式如下: $(selector).delegate(childSelector,event,data,function)…

    jquery 2023年5月27日
    00
  • jQuery Mobile Listview refresh()方法

    jQuery Mobile是基于jQuery的一款用于构建移动应用的框架,其中的Listview组件用于进行列表展示。在实际开发中,我们可能需要动态地更改Listview的数据,这就需要用到Listview的refresh()方法。 1. refresh()方法的基本介绍 refresh()方法用于刷新Listview组件,重新渲染Listview并应用任何…

    jquery 2023年5月12日
    00
  • 如何使用jQuery创建一个斑马条纹的表格效果

    让我来为您详细讲解如何使用jQuery创建一个斑马条纹的表格效果的完整攻略。 准备工作 在HTML文件中引入jQuery库,可以使用CDN或本地文件引入。 <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> 创建表格,这里使用最简单…

    jquery 2023年5月12日
    00
  • jQWidgets jqxScheduler touchAppointmentsMinHeight属性

    下面是关于jQWidgets jqxScheduler touchAppointmentsMinHeight属性的详细讲解,包含属性的含义、用法和示例说明。 属性含义 jqxScheduler是jQWidgets中用于创建日程安排和任务分配的插件。touchAppointmentsMinHeight属性是用于设置在移动端(触摸屏)上渲染的日程条目(简称“任务…

    jquery 2023年5月11日
    00
  • jQWidgets jqxListBox disabled属性

    jQWidgets jqxListBox disabled属性详解 jQWidgets是一个基于jQuery的UI组件库,提供了丰富UI组件工具包。jqxListBox是其中之一,本文将详细介绍jqxListBox的disabled属性,包括定义、语法和示例。 disabled属性的定义 jqxListBox的disabled属性用于禁用或启用列表框。当di…

    jquery 2023年5月10日
    00
  • jQuery UI Selectable autoRefresh选项

    以下是关于 jQuery UI Selectable 中的 autoRefresh 选项的详细攻略: jQuery UI Selectable autoRefresh 选项 autoRefresh 选项是 jQuery UI Selectable 中的一个选项,用于指定是否在选择期间自动刷新选择区域。当 autoRefresh 选项设置为 true 时,选择…

    jquery 2023年5月11日
    00
  • JavaScript 九种跨域方式实现原理

    下面是“JavaScript 九种跨域方式实现原理”的完整攻略。 1. 跨域概述 所谓跨域,即提到网页中使用了访问来源不同的域名。例如,在 www.example.com 中嵌入了来自 api.example.net 的请求。这种情况下就需要通过跨域来完成交互操作。一般来说,跨域请求是被浏览器所禁止的。因此我们需要寻找别的解决方案来满足我们的需求。 2. C…

    jquery 2023年5月27日
    00
  • 疯狂Jquery第一天(Jquery学习笔记)

    疯狂Jquery第一天(Jquery学习笔记)是一篇针对Jquery学习初学者的教程。本文讲解了Jquery的基本概念、基本语法、基本选择器和事件绑定等知识点。以下是本文的完整攻略: 一、Jquery的基本概念 本文首先介绍了Jquery的基本概念,即Jquery是一个JavaScript库,可以简化JavaScript的编程,提高开发效率。Jquery的优…

    jquery 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部