$.ajax()方法进行网页间传值示例

下面进行详细讲解“$.ajax()方法进行网页间传值示例”的完整攻略。

什么是$.ajax()方法

$.ajax() 方法是 jQuery 库里的一种简单易用的方法,用于执行AJAX(异步 JavaScript 和 XML)请求。$.ajax() 方法可以对 Web 应用程序进行异步 HTTP(Ajax)请求,支持跨域。可以发送POST、GET等类型的请求,并可以处理服务器返回的数据。

传值方法

一般传值有两种方式:Get和Post。Get方式通过URL提交,相当于在Web页面中增加了一些参数信息,而Post方式是通过HTTP发送数据,它不会像Get那样把数据暴露出来。

Get方法传值

$.ajax的Get方法传值时,可以把参数信息放在url后面,也可以把参数封装在data参数内传入,后端收到后可以直接获取,具体实现如下:

$.ajax({
    url: 'url地址',
    type: 'GET',
    data: {username: 'zhangsan', password: '123456'},
    success: function (data) {
        console.log(data)
    }
});

POST方法传值

同样也有两种方式可以传值。第一种既可以用data参数封装,也可以直接传递json格式的字符串。第二种方式要设置data类型为JSON,并在headers中设置contentType属性为application/json;charset=utf-8

1、用data参数封装

$.ajax({
    url: 'url地址',
    type: 'POST',
    data: {username: 'zhangsan', password: '123456'},
    success: function (data) {
        console.log(data)
    }
});

2、直接传递json格式的字符串

$.ajax({
    url: 'url地址',
    type: 'POST',
    data: JSON.stringify({username: 'zhangsan', password: '123456'}),
    dataType: 'json',
    success: function (data) {
        console.log(data)
    },
    contentType: 'application/json;charset=utf-8',
    headers: {
        'Content-Type': 'application/json;charset=utf-8',
        'Accept': 'application/json;charset=utf-8'
    }
});

示例说明

下面给出两个示例说明:

示例一

在一个页面向另一个页面发送Get请求,请求数据并把数据显示在页面上。

接收请求的页面代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>接收请求的页面</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<p>接收到请求,数据如下:</p>
<ul id="msg"></ul>
<script>
    $(function () {
        var username = getData('username');
        var password = getData('password');
        var msgList = '';
        msgList += '<li>username: ' + username + '</li>';
        msgList += '<li>password: ' + password + '</li>';
        $('#msg').html(msgList);
    });

    function getData(name) {
        var queryStr = window.location.search.substring(1);
        var arr = queryStr.split("&");
        for (var i = 0; i < arr.length; i++) {
            var sIndex = arr[i].indexOf(name + "=");
            if (sIndex !== -1) {
                var value = arr[i].substring(sIndex + name.length + 1);
                return value;
            }
        }
        return "";
    }
</script>
</body>
</html>

请求页面代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>请求页面</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<button id="send">发送请求</button>
<script>
    $(function () {
        $('#send').click(function () {
            $.ajax({
                url: '接收请求的页面地址',
                type: 'GET',
                data: {username: 'zhangsan', password: '123456'},
                success: function (data) {
                    console.log(data)
                }
            });
        });
    });
</script>
</body>
</html>

示例二

在一个页面向另一个页面发送Post请求,请求数据并把数据显示在页面上。

接收请求的页面代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>接收请求的页面</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<p>接收到请求,数据如下:</p>
<ul id="msg"></ul>
<script>
    $(function () {
        var username = getData('username');
        var password = getData('password');
        var msgList = '';
        msgList += '<li>username: ' + username + '</li>';
        msgList += '<li>password: ' + password + '</li>';
        $('#msg').html(msgList);
    });

    function getData(name) {
        var queryStr = window.location.search.substring(1);
        var arr = queryStr.split("&");
        for (var i = 0; i < arr.length; i++) {
            var sIndex = arr[i].indexOf(name + "=");
            if (sIndex !== -1) {
                var value = arr[i].substring(sIndex + name.length + 1);
                return value;
            }
        }
        return "";
    }
</script>
</body>
</html>

请求页面代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>请求页面</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<button id="send">发送请求</button>
<script>
    $(function () {
        $('#send').click(function () {
            $.ajax({
                url: '接收请求的页面地址',
                type: 'POST',
                data: {username: 'zhangsan', password: '123456'},
                success: function (data) {
                    console.log(data)
                }
            });
        });
    });
</script>
</body>
</html>

以上便是关于$.ajax()方法进行网页间传值示例的完整攻略,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:$.ajax()方法进行网页间传值示例 - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • JavaSpringBoot报错“OptimisticLockingFailureException”的原因和处理方法

    当使用Java的Spring Boot框架时,可能会遇到“OptimisticLockingFailureException”错误。这个错误通常是由以下原因之一引起的: 乐观锁失败:如果在使用乐观锁时,版本号不匹配,则可能会出现此错误。在这种情况下,需要查找版本号不匹配的原因并解决它。 并发修改:如果在多个线程同时修改同一条记录时,可能会出现此错误。在这种情…

    Java 2023年5月5日
    00
  • ASP.NET Core使用微软官方类库实现汉字转拼音

    这里详细讲解如何使用ASP.NET Core及微软官方NuGet库实现汉字转拼音。首先,先简单介绍一下所需的库。 Microsoft.AspNetCore.All:ASP.NET Core的核心库,包含了ASP.NET Core应用所需的各种组件。 Microsoft.Extensions.Configuration:ASP.NET Core配置系统的基础组…

    Java 2023年5月19日
    00
  • Win2003平台上jsp虚拟主机环境的架设(IIS6+J2SDK+resin)

    这里提供Win2003平台上jsp虚拟主机环境的架设攻略,该环境采用IIS6+J2SDK+Resin,具体步骤如下: 准备工作 下载并安装J2SDK(Java SE Development Kit) 下载Resin,并解压到指定目录下。 下载并安装IIS6。 安装Resin 进入Resin解压后的主目录,找到bin目录。 右键点击resin.exe,选择“以…

    Java 2023年6月15日
    00
  • java中通用的线程池实例代码

    下面就为大家详细讲解java中通用的线程池实例代码的完整攻略。 1. 线程池的概念 在java中,线程池是一个预先构建的线程集合,以便在需要执行任意数量的任务时重复使用线程,而不需要频繁地创建新线程。线程池中的线程可以在执行一些任务后重新被分配给新的任务,这样可以避免线程的频繁创建和销毁,从而提高了线程的利用率。 2. 如何使用线程池 在Java中,线程池是…

    Java 2023年5月30日
    00
  • Spring Boot 底层原理基础深度解析

    下面我将详细讲解“Spring Boot 底层原理基础深度解析”的完整攻略。本攻略将分为以下几个部分: 什么是Spring Boot Spring Boot的核心概念及技术栈 Spring Boot的启动流程详解 Spring Boot的自动化配置原理 示例一:使用Spring Boot构建一个简单的Web应用 示例二:使用Spring Boot集成MyBa…

    Java 2023年5月19日
    00
  • java中的常见关键字解析

    Java中的关键字是具有特殊含义的词汇,它们在编写Java程序时起着非常重要的作用。在本文中,我们将详细讲解Java中的常见关键字及其用法。 标识符 Java中的标识符是用来命名变量、方法和类等的名称,标识符需要满足以下要求: 标识符是由字母、数字、下划线组成的序列。 第一个字符必须是字母或下划线。 标识符不能是Java关键字。 标识符区分大小写。 示例: …

    Java 2023年5月26日
    00
  • IDEA2020.1创建springboot项目(国内脚手架)安装lombok

    这里是创建Spring Boot项目并安装Lombok的完整攻略。 准备工作 在开始之前,需要先确保已经在电脑上安装好以下软件:- JDK(Java开发工具包)- IntelliJ IDEA 2020.1(社区版或旗舰版均可) 创建Spring Boot项目 打开 IntelliJ IDEA,选择 “Create New Project” 创建新项目。 在左…

    Java 2023年5月19日
    00
  • spring boot过滤器实现项目内接口过滤

    spring boot过滤器实现项目内接口过滤 业务 由于业务需求,存在两套项目,一套是路由中心,一套是业务系统.现在存在问题是,路由中心集成了微信公众号与小程序模块功能,业务系统部署了多套服务.现在需要通过调用路由中心将接口重新路由到指定的业务系统中 需要处理的问题 将小程序,公众号用户信息与业务系统做绑定 将路由中心的接口与业务系统的接口判断出来 通过用…

    Java 2023年4月22日
    00
合作推广
合作推广
分享本页
返回顶部