AJAX-简单示例

一个简单的AJAX示例

这里写图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>AJAX</title>
    <script>
        function getXMLHttpRequest() {
            try {
                try{
                    return new ActiveXObject("Microsoft.XMLHTTP");
                }catch(e){
                    return new ActiveXObject("Msxml2.XMLHTTP");
                }
            } catch(e) {
                    return new XMLHttpRequest();
            }

                }

        function responseAjax(){
            if(myRequest.readyState ==4){
                if(myRequest.status == 200){
                    alert("The server said:"+myRequest.responseText);
                }else{
                    alert("error:"+myRequest.statusText);
                }
            }
        }

        var myRequest = getXMLHttpRequest();
        function callAjax(){
            var lastname = 'Numb';
            var url="http://123.206.17.200/hello.php";
            myRequest.open('GET',url)
            myRequest.onreadystatechange = responseAjax;
            myRequest.send()
        }
    </script>
</head>
<body>
    <button id="btn" onclick="callAjax()">按钮</button>
</body>
</html>

页面很简单,只有一个button,添加了一个onclick事件,有三个函数,分别是
getXMLHttpRequest():针对不同浏览器,获取XMLHttpRequest实例
responseAjax():回调函数,当浏览器请求完成后执行,返回服务器返回的数据,responseText
callAjax():发送服务器请求,open()和send()方法
假设服务器用如下的一个简单PHP文件:

<?php echo "Hello Ajax caller";?>

如果XMLHttpRequest成功调用了这个文件,responseText属性就会发哦韩字符串”Hello Ajax caller”,如下图
注意:要访问的必须是同域下文件,同源策略规定,浏览器的ajax只能访问跟它的HTML页面同源(相同域名或IP)的资源。
什么事跨域访问:在A网站中,我们希望使用Ajax来获得B网站中的特定内容。如果A网站与B网站不在同一个域中,那么就出现了跨域访问问题。你可以理解为两个域名之间不能跨过域名来发送请求或者请求数据,否则就是不安全的。
跨域访问可用CORS,以后更新

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AJAX (Asynchronous JavaScript and XML) 是一种用于前后端数据交互的技术。它允许在不刷新整个页面的情况下,通过异步方式向服务器发送请求并获取响应数据。 使用 AJAX 可以实现以下功能: 1. 发送异步请求:通过 JavaScript 创建 XMLHttpRequest 对象,并使用该对象发送 HTTP 请求到服务器。 2. 处理响应数据:一旦服务器返回响应,可以通过回调函数处理返回的数据。常见的数据格式包括 XML、JSON 或纯文本。 3. 更新页面内容:根据服务器返回的数据,可以使用 JavaScript 动态更新页面内容,而不需要刷新整个页面。这样可以提升用户体验并减少网络流量。 以下是一个简单AJAX 示例代码: ```javascript // 创建 XMLHttpRequest 对象 var xhr = new XMLHttpRequest(); // 指定请求的方法和 URL xhr.open('GET', 'https://api.example.com/data', true); // 设置回调函数处理响应 xhr.onreadystatechange = function() { if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { // 处理服务器返回的数据 var response = xhr.responseText; console.log(response); // 更新页面内容 document.getElementById('result').innerHTML = response; } }; // 发送请求 xhr.send(); ``` 在上述示例中,我们使用 AJAX 发送了一个 GET 请求到 `https://api.example.com/data`,并设置了一个回调函数来处理服务器返回的数据。在回调函数中,我们将返回的数据打印到控制台,并将其更新到 id 为 `result` 的 HTML 元素中。 通过 AJAX,前端可以与后端进行实时的数据交互,从而实现更加动态和响应式的用户界面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值