美文网首页
ajax的原来和应用

ajax的原来和应用

作者: 唐人不自醉 | 来源:发表于2018-09-18 16:20 被阅读3次

ajax是什么?
Asynchronous Javascript And XML
上网怎么上的?
客户端:浏览器,前端(html、css、js、jquery)
服务端:现成的,比如百度、csdn等,后端(php、java、python)
有网
上网就是客户端向服务端发送请求,然后获取到服务端数据的过程
你是通过url的切换实现的,url就是网址,来得到不同的内容
ajax:在不刷新整个页面的前提下,完成了和服务端的交互,也就更新了网页里面的内容,一般都是局部更新
应用:nba直播,文字直播,用户注册,不更新页面加载下一页数据
ajax怎么使用?
(1)原生js实现
(2)jquery封装好的函数的用法

'content-type', 'application/x-www-form-urlencoded'
setRequestHeader
onreadystatechange
    readyState
    status
    responseText
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>ajax实现</title>
</head>
<body>
    
</body>
</html>
<script>
// 原生的js实现ajax的技术
// 创建对象,
// XMLHttpRequest是高级浏览器创建ajax对象的方式
// IE8以下的创建方式不一样,只需了解即可
var xhr = new XMLHttpRequest()
// 和后端进行交互,交互的方式有两种,pc端:get、post  移动端:get、post、put、delete等
// 发送get请求 
// 参数1:请求方式
// 参数2:处理这个请求的文件,或者url
// 这样就将请求发送过去了
// xhr.open('get', 'url')
// xhr.send()

// post方式如何发送
xhr.open('post', 'url')
// 发送post,必须要添加这个东西
xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded')
// 在发送send的时候,需要将要传递的参数写进来
xhr.send('name=狗蛋&password=123')

// 服务端返回数据给你,要使用下面的代码
// ajax在发送请求的时候,状态会改变,会触发这个事件
xhr.onreadystatechange = function () {
    // 4是固定的,代表的意思是请求发送成功
    if (xhr.readyState == 4) {
        // 当响应也成功的时候,就可以获取数据了,去判断响应状态码  404
        if (xhr.status == 200) {
            // 获取响应的内容
            var content = xhr.responseText
            // 响应内容一般都是json格式的字符串
            // 你的工作就是解析json字符串,将内容填充到html中
            // 首先将json格式字符串转化为js对象
            var obj = JSON.parse(content)
            // var obj = eval('(' + content + ')')
        }
    }
}
</script>

交互

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>和服务端交互</title>
</head>
<body>
    用户名:<input type="text" name="user" id="user">
    <br>
    会员等级:<input type="text" name="level" id="level">
    <br>
    会员余额:<input type="text" name="money" id="money">
    <br>
    会员年限:<input type="text" name="year" id="year">
    <br>
    <button id="btn">点我获取内容</button>
</body>
</html>
<script>
// 获取按钮
var obtn = document.getElementById('btn')
// 找到每一个input
var ouser = document.getElementById('user')
var olevel = document.getElementById('level')
var omoney = document.getElementById('money')
var oyear = document.getElementById('year')
// 添加点击事件
obtn.onclick = function () {
    // 和服务端交互, 创建ajax对象来交互
    var xhr = new XMLHttpRequest()
    xhr.open('get', 'ziliao0.php')
    xhr.send()

    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            if (xhr.status == 200) {
                // console.log(xhr.responseText)
                // 将其转化为js对象
                obj = JSON.parse(xhr.responseText)
                ouser.value = obj.name
                olevel.value = obj.level
                omoney.value = obj.money
                oyear.value = obj.year
            }
        }
    }
}
</script>

用户注册

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>用户注册</title>
    <script src="https://cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
    <h1>你好,世界!</h1>
    <input type="text" name="user" id="user">
    <span id="usertip"></span>
</body>
</html>
<script>
$(function () {
    $('#user').blur(function () {
        // 通过ajax将内容传递给服务端,服务端判断之后,给你个状态,你再去对应的修改你的内容
        $.ajax({
            type: "POST",
            url: "zhuce.php",
            data: "name=" + $(this).val(),
            success: function(msg){
                // msg就是服务端给你的内容
                var obj = JSON.parse(msg)
                if (obj.state == 1) {
                    $('#usertip').html('√').css('backgroundColor', 'green')
                } else {
                    $('#usertip').html('该用户已经注册').css('backgroundColor', 'red')
                }
            }
        });
    })
})
</script>

相关文章

  • ajax的原来和应用

    ajax是什么?Asynchronous Javascript And XML上网怎么上的?客户端:浏览器,前端(...

  • 2018-09-26

    axios axios: vue中的ajax(ajax:前端页面和后台数据做交互) axios的应用

  • ajax的应用

    新建XMLHttpRequest 对象 发送请求 未完。。。

  • phper必看:想全面了解ajax,看此帖就足足的够了!

    1、什么是AJAX 2、为什么要用ajax:Ajax应用程序的优势在于: 3、AJAX最大的特点是什么。 4、请介...

  • AJAX

    什么是AJAX AJAX是异步的JavaScript和XML,是一种创建交互式网页应用的网页开发技术。 XMLHt...

  • Ajax应用

    1、 ajax 是什么?有什么作用? 含义:AJAX = Asynchronous JavaScript and ...

  • ajax应用

    2019-05-29 Ajax简介 ​ Ajax(Asynchronous Javascript And XM...

  • AJAX应用

    一,基本概念 Asynchronous Javascript And XML 一种用于创建快速动态网页的技术,与服...

  • Ajax学习笔记

    Ajax是什么 Ajax(异步的JavaScript和XML),是一种创建交互式网页应用的网页开发技术,该技术的核...

  • 2019-02-15 Ajax 简要笔记

    1.Ajax简要介绍 Ajax 是指一种创建交互式网页应用的网页开发技术,异步JavaScript和XML 关键点...

网友评论

      本文标题:ajax的原来和应用

      本文链接:https://www.haomeiwen.com/subject/amupnftx.html