本网站(662p.com)打包出售,且带程序代码数据,662p.com域名,程序内核采用TP框架开发,需要联系扣扣:2360248666 /wx:lianweikj
精品域名一口价出售:1y1m.com(350元) ,6b7b.com(400元) , 5k5j.com(380元) , yayj.com(1800元), jiongzhun.com(1000元) , niuzen.com(2800元) , zennei.com(5000元)
需要联系扣扣:2360248666 /wx:lianweikj
PHP实现AJAX动态网页及相关函数详解
phpren · 247浏览 · 发布于2022-08-02 +关注

ajax其实是利用javascript向服务器请求数据,然后局部修改页面,下面这篇文章主要给大家介绍了关于PHP实现AJAX动态网页及相关函数的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

    AJAX

    AJAX(Asynchronous JavaScript and xml)是一种用于创建动态网页的技术,该技术可以通过后台与服务器进行指定的数据交换,从而使得不必重新加载整个页面情况下对网页进行局部刷新。

    1. XMLHttpRequest对象

    XMLHttpRequest 用于在后台与服务器交换数据。

    通过variable=new XMLHttpRequest()创建新对象给变量variable。

    //如果有request请求则创建新对象
    if (window.XMLHttpRequest) {
                    // IE7+, Firefox, Chrome, Opera, Safari 执行代码
                    xmlhttp=new XMLHttpRequest();
                  } else {
                    // IE6, IE5 执行代码
                    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                  }

    2. 发出请求的方法

    xmlhttp.open("GET","test.php?q="+parameter,true);
    xmlhttp.send();

    2.1XMLHttpRequest.open()

    规定请求的类型、URL 以及是否异步处理请求。

    Syntax

    XMLHttpRequest.open(method, url, async, user, password)

    Parameters

    • method :对http请求类型,如GET,POST,PUT,HEAD

    • url:文件在服务器地址

    • async:是否选择异步处理,默认为true

    • user, password (可选)用于身份认证,默认为null

    2.2XMLHttpRequest.setRequestHeader()

    设置HTTP请求头部的方法。此方法必须在 open() 方法和 send() 之间调用

    Syntax

    XMLHttpRequest.setRequestHeader(header, value)

    Parameter

    header:属性名称

    valueL:属性的值

    2.3 XMLHttpRequest.send()

    发送请求至服务器

    Syntax

    XMLHttpRequest.send(str)

    Parameter

    str:如果请求方法是 GET 或者 HEAD,则应将之设为null

    3.XMLHttpRequest的响应状态

    3.1XMLHttpRequest.readyState

    返回代理请求当前所处的状态。

    状态描述
    0UNSENT代理被创建,但尚未调用 open() 方法。
    1OPENEDopen() 方法已经被调用。
    2HEADERS_RECEIVEDsend() 方法已经被调用,并且头部和状态已经可获得。
    3LOADING下载中; responseText 属性已经包含部分数据。
    4DONE下载操作已完成。

    3.2 XMLHttpRequest.status

    返回请求响应的数字状态码

    状态描述
    0UNSENT,OPENED请求未完成或者出错
    200Loading,DONE请求成功

    4.处理函数

    XMLHttpRequest.onreadystatechange

    只要readystate属性发生变换,就会调用出处理函数callback

    Syntax

    XMLHttpRequest.onreadystatechange = callback;

    5. 简单示例

    test.html

    <!doctype html>
    <html>
    <meta charset="utf-8">
        <head>
            <script>
                //自定义函数及参数
                function functest(parameter) {
                  if (window.XMLHttpRequest) {
                    // IE7+, Firefox, Chrome, Opera, Safari 执行代码
                    xmlhttp=new XMLHttpRequest();
                  } else {
                    // IE6, IE5 执行代码
                    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                  }
                    //onreadystatechange存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数
                  xmlhttp.onreadystatechange=function() {
                      //xmlhttp.readyState==4 && xmlhttp.status==200表示请求完成并且成功返回
                  if (xmlhttp.readyState==4 && xmlhttp.status==200)
                    {
                        //通过 document.getElementById()调用标签写入Value值。
                      document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
                    }
                  }
                 //通过get调用服务器test.php的页面,‘q'为定义的加载到PHP页面的变量
                  xmlhttp.open("GET","test.php?q="+parameter,true);
                  xmlhttp.send();
                }
            </script>
        </head>
        <body>      
            <form> //每输入一个值调用functest()函数
            测试输入: <input type="text" onkeyup="functest(this.value)">
            </form>
            <p>返回值: <span id="txtHint" style ='color:red'></span></p>
                 </body>
         </html>

    test.php

    <?php
    //从请求URL地址中获取 q 参数
    $trans=$_GET["trans"];
    //输出返回值
    echo "你好,陌生人。";
    ?>

    参考:

    [Documenting web technologies, including CSS, HTML, and JavaScript](MDN Web Docs (mozilla.org))


    相关推荐

    PHP实现部分字符隐藏

    沙雕mars · 1325浏览 · 2019-04-28 09:47:56
    Java中ArrayList和LinkedList区别

    kenrry1992 · 908浏览 · 2019-05-08 21:14:54
    Tomcat 下载及安装配置

    manongba · 970浏览 · 2019-05-13 21:03:56
    JAVA变量介绍

    manongba · 962浏览 · 2019-05-13 21:05:52
    什么是SpringBoot

    iamitnan · 1086浏览 · 2019-05-14 22:20:36
    加载中

    0评论

    评论
    我从小喜欢编程,一直在学习中,从未停止,未来也是如此!
    小鸟云服务器
    扫码进入手机网页