初始AJAX

192 阅读1分钟

通过之前不断地学习,我们终于从html、css、javascript的全世界路过,正式来到了Ajax的世界,那么,让我们一起来认识一下它吧!

一、什么是Ajax?

Ajax的全称是 Asynchronous Javascript And XML(异步 JavaScript 和 XML)

我们可以将它理解为一种:在网页中利用XMLHttpRequest对象和服务器进行数据交互的方式

二、学习Ajax有什么好处?

不同于我们之前学的html、css等,Ajax除了“华丽的外表”,它还有“真本事”,它能让我们轻松的实现网页和服务器之间的数据交互。是不是超赞!

三、如何在发起Ajax请求?

由于XMLHttpRequest的用法比较复杂,因此jqery对XMLHttpRequest进行了封装,提供了一系列Ajax相关的函数,极大的降低了Ajax的使用难度。

在jquery中发起Ajax请求的三种方法: $.get() $.post() $.ajax()

现在让我们来仔细了解以下这三种方法吧!

  1. $.get()

向服务器发送get请求,将服务器上的资源请求到客户端来进行使用(“查”的一个过程)

$.get()分两种情况:带参数和不带参数

参数就是你要请求的主元素

不带参数:

其语法如下: $.get('url地址',回调函数);

带参数:

其语法如下: $.get('url地址',{指定携带的对象},回调函数);

具体代码如下:(注意:ajax使用过程中一定要引入jquery.js文件,否则代码无法运行,一切都白搭)

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="lib/jquery.js"></script>
</head>

<body>
    <button id="btnGETInfo">发起带参数的GET请求</button>
    <script>
        (function () {
            // 给按钮绑定事件
            $('#btnGETInfo').on('click', function () {
             // 1.发起不带参数的GET请求
             // 格式如下: $.get('url地址',回调函数);
                $.get('http://www.liulongbin.top:3006/api/getbooks', function (res) {
                    console.log(res);
                })
             // 2.发起带参数的GET请求
             // 格式如下: $.get('url地址',{指定携带的对象},回调函数);
                // 注意:{指定携带的对象} 它的结尾部分不能使用分号";"
                $.get('http://www.liulongbin.top:3006/api/getbooks', { id: 1 }, function (res) {
                    console.log(res);
                })
            })
        })()
    </script>
</body>

</html>

2.$.post()

向服务器发送post请求,向服务器提交数据(“添”的一个过程)

其语法和$.get()的相差无几,不过因为 post 是主动传输,所以它一定带参数

具体代码如下:

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="lib/jquery.js"></script>
</head>

<body>
    <button id="btnPost">发起POST请求</button>
    <script>
        (function () {
            $('#btnPost').on('click', function () {
                // post 提交数据
                // 格式如下:$.post('url',{传送内容},回调函数);
                // 注意:数据不能重复添加,否则会出现重叠的情况  它的url值和请求的时候有所不同
                $.post('http://www.liulongbin.top:3006/api/addbook', {
                    bookname: '红楼梦', author: '曹雪芹', publisher: '人民文学出版社'
                }, function (res) {
                    console.log(res);
                })
            })
        })()
    </script>
</body>

</html>

3.$.ajax()

这一看它的名字就知道它不一般,没错,它是综合型“人才”,既可以“查”,也可以“添”

其基本语法如下:

 $.ajax({
                    type: '', // 请求方式, GET 或者 POST
                    url: '',  // 请求的 url 地址
                    data:{}, // 请求所带的数据
                    success: function (res) {
                     // 请求成功后的回调函数
                    }
                })

具体代码如下:

GET

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="lib/jquery.js"></script>
</head>

<body>
    <button id="btnGet">发起GET请求</button>
    <script>
        (function () {
            $('#btnGet').on('click', function () {
                // type 中可以选择数据类型(get/post)
                $.ajax({
                    type: 'GET',
                    url: 'http://www.liulongbin.top:3006/api/getbooks',
                    data: {
                        id: 1
                    },
                    success: function (res) {
                        console.log(res);
                    }
                })
            })
        })()
    </script>
</body>

</html>

POST

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="lib/jquery.js"></script>
</head>

<body>
    <button id="btnPost">发起POST请求</button>
    <script>
        (function () {
            $('#btnPost').on('click', function () {
                $.ajax({
                    type: 'POST',
                    url: "http://www.liulongbin.top:3006/api/addbook",
                    data: {
                        bookname: '三国演义', author: '罗贯中', publisher: '人民文学出版社'
                    }
                })
            })
        })()
    </script>
</body>

</html>

好了,到这里,我们算是初始了Ajax的基础内容,欲知后事如何,请看下回分解! QQ图片20220410213357.gif

如有错误,请在评论区中指正,我们共同进步! QQ图片20220410213524.gif