Ajax,原生和jQuery中的Ajax

一、get请求与post请求     
get请求,请求的数据会附加URL之后,以 ?分割URL和传输数据,post请求会把请求的数据放置在HTTP请求包的包体中
get请求传递数据的大小会受到限制;post请求发送的数据理论上没有大小限制
get请求不安全,post请求安全

二、Ajax简介     
Ajax全称:asynchronous JavaScript and xml (异步JavaScript和xml)
通过Ajax技术可以通过与后台爱服务器进行少量的数据交换,从而实现网页的异步更新,这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行局部刷新

三、JavaScript实现Ajax     
1.获取ajax对象:
 
var xhr=null;
if(window.XMLHttpRequest){
    xhr=new XMLHttpRequest();
}else{
    xhr=new ActiveXObject("Micorsoft.XMLHTTP")
}
2.使用Ajax对象调用open("请求方式","请求路径",是否为异步)
3.绑定状态改变事件
 
xhr.onreadystatechange=function(){
    if(xhr.readyState==4){
        if(xhr.status==200){
            //交互成功时执行的代码
            var txt=xhr.responseText;
        }
    }
};
4.发送请求
 
xhr.send(参数)
注意:若为post提交,则必须设置请求头消息
setRequestHeader("content-type","application/x-www-form-urlencoded");
采用application/x-www-form-urlencoded的post数据和url中传参只是形式不同,本质都是传递参数

四jQuery实现Ajax     
1.使用一个HTTP GET 请求从服务器加载数据$.get(url [,data] [,success])
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript" src="../jquery-3.1.1.js"></script>
    <script type="text/javascript">
        $(function(){
            $("#btn").click(function(){
                $.get("http://wthrcdn.etouch.cn/weather_mini?city=西安",function(data){
                    var obj=JSON.parse(data);
                    var high=obj["data"]["yesterday"]["high"];
                    $("#mydiv").html("<h3>昨日最高温度是:"+high+"</h3>");
                });
            });
        });
    </script>
</head>
<body>
    <input type="button" value="jQuery的ajax请求" id="btn">
    <div id="mydiv"></div>
</body>
</html>
2.使用一个HTTP POST 请求从服务器加载数据$.post(url [,data] [,success])
 
<!DOCTYPE html>
<html lang="en">
<head>qqwwqqwqwqwwq
    <meta charset="UTF-8">
    <title>jQuery实现Ajax之post请求</title>
    <script type="text/javascript" src="../jquery-3.1.1.js"></script>
    <script type="text/javascript">
        $(function(){
            $("#btn").click(function(){
                // post提交,跨域请求会被禁止(因为“同源策略”)
                $.post("http://wthrcdn.etouch.cn/weather_mini",
                    {"city","西安"},
                    function(data){
                        $("#mydiv").html(data);
                        var obj=JSON.parse(data);
                        var high=obj["data"]["yesterday"]["high"];
                        $("#mydiv").html("<h3>昨日最高温度是:"+high+"</h3>");
                });
            });
        });
    </script>
</head>
<body>
    <input type="button" value="jQuery的get请求" id="btn">
    <div id="mydiv"></div>
    
</body>
</html>
3.执行一个异步的HTTP(Ajax)的 请求$.ajax([settings])

eg:ajax底层方法(post请求,使用datatpye>>>jsonp)
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jQuery实现Ajax之底层方法</title>
    <script type="text/javascript" src="../jquery-3.1.1.js"></script>
    <script type="text/javascript">
        $(function(){
            $("#btn").click(function(){
                $.ajax({
                    url:"http://wthrcdn.etouch.cn/weather_mini",//请求地址
                    data:{"city":"西安"}, //传递给服务器的数据
                    type:"post", //请求类型
                    dataType:"jsonp",  // 期望服务器返回的数据类型
                    //  jsonp专门解决post提交的跨域问题
                    beforeSend:function(){  // 发送之前的回调函数
                        alert("准备发送啦。。。。。")
                    },
                    success:function(data){
                        alert(data);
                    $("#mydiv").html(data["data"]["yesterday"]["high"])
                    },
                    error:function(jqXHR,textStatus,textStatus){
                        alert(textStatus);
                    },
                    complete:function(){
                        alert("completel了")
                    }
                });
            });
        });
    </script>
</head>
<body>
    <input type="button" value="jQuery的ajax请求" id="btn">
    <div id="mydiv"></div>
    
</body>
</html> 

eg:ajax方法datatpye (get请求>>>>>datatpye是json)
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>dataType</title>
    <script type="text/javascript" src="../jquery-3.1.1.js"></script>
    <script type="text/javascript">
        $(function(){
            $("#btn").click(function(){
                $.ajax({
                    url:"http://wthrcdn.etouch.cn/weather_mini?city=西安",//请求地址
                    // data:{"city":"西安"}, //传递给服务器的数据
                    type:"get", //请求类型
                    dataType:"json",  // 期望服务器返回的数据类型
                    //  jsonp专门解决post提交的跨域问题
                    beforeSend:function(){  // 发送之前的回调函数
                        alert("准备发送啦。。。。。")
                    },
                    success:function(data){
                         var array = data["data"]["forecast"];
                          var result="";
                            for(var index in array){
                              result+=array[index]["date"]+"<br/>";  // 拼接数组里的日期
                              result+=array[index]["high"]+"<br/>";
                              result+=array[index]["low"]+"<br/>";
                              result+=array[index]["type"]+"<br/>";
                              result+="<hr/>";
                            }
                        $("#mydiv").html(result)
                    },
                    error:function(jqXHR,textStatus,textStatus){
                        alert(textStatus);
                    },
                    complete:function(){
                        alert("completel了")
                    }
                });
            });
        });
    </script>
</head>
<body>
    <input type="button" value="jQuery的ajax请求" id="btn">
    <div id="mydiv"></div>
    
</body>
</html> 




原生ajax
 
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>JavaScript实现Ajax</title>
  <script type="text/javascript">
       // 该函数用来创建Ajax对象
       function getXHR(){
        var xhr;
            if(window.XMLHttpRequest){   // 如果当前浏览器支持XMLHttpRequest对象
                xhr=new XMLHttpRequest();
            }else{
              xhr=new ActiveXObject("Microsoft.XMLHTTP");  // 支持早期IE浏览器版本
            }
            return xhr;
       }
         function showWeather(city){
             var xhr=getXHR();   // 获取Ajax对象
            // 打开连接:第一个参数:请求方式;第二个参数:请求地址;第三个参数:是否异步
             xhr.open("get","http://wthrcdn.etouch.cn/weather_mini?city="+city,true);
             xhr.onreadystatechange=function(){
                  if(xhr.readyState==4){   // 与服务器交互完毕
                       if(xhr.status==200){   // 状态码为200,说明正常
                          var txt=xhr.responseText;   // 接收响应文本
                            // 将JSON字符串转换为JavaScript对象
                          var weather_obj=JSON.parse(txt);   
                          var array = weather_obj["data"]["forecast"];
                          var result="";
                            for(var index in array){
                              result+=array[index]["date"]+"<br/>";  // 拼接数组里的日期
                              result+=array[index]["high"]+"<br/>";
                              result+=array[index]["low"]+"<br/>";
                              result+=array[index]["type"]+"<br/>";
                              result+="<hr/>";
                            }
                            document.getElementById("mydiv").innerHTML=result;
                       }
                  }
             };
             xhr.send(null);   // 发送请求
         }
  </script>
</head>
<body>
    <input type="button" value="获取天气信息" onclick="showWeather('西安')"/>
    <div id="mydiv"></div>
</body>
</html>
利用ChatGPT技术推进中医药领域的数字化型和临床实践,需要综合考虑多个方面。首先,在数字化型方面,可以通过建立中医药知识库和案例数据库,利用ChatGPT的数据分析和处理能力,帮助医生和研究人员快速检索和参考相关的中医药知识和临床经验。例如,使用自然语言处理技术,让ChatGPT能够理解和处理中医药术语和相关文献,进行智能检索和数据提取,辅助构建标准化的中医药信息平台。 参考资源链接:[ChatGPT在中医药现代化中的潜力与应用探索](https://wenku.youkuaiyun.com/doc/5wwswt7u3o?spm=1055.2569.3001.10343) 其次,在临床实践中,ChatGPT可以作为辅助工具,为医生提供决策支持。在处理病历和诊疗计划时,ChatGPT能够提供基于现有数据和案例的推荐意见,帮助医生制定更加精确的治疗方案。此外,通过集成患者反馈和治疗结果数据,ChatGPT还能够不断学习和优化推荐算法,提高其辅助决策的准确性和可靠性。 为了确保用药安全和提高诊疗质量,ChatGPT还可以参与到中药的配伍和剂量计算中。通过自然语言理解技术,它能够理解和分析中医方剂的配伍原则,辅助医生进行药材选择和剂量调整,从而减少医源性错误,提升临床治疗的安全性和有效性。 在提升中医药的科学论证方面,ChatGPT可以协助科研人员进行文献综述和数据分析,辅助中医药研究的科学化和规范化。例如,通过机器学习算法,ChatGPT可以处理大量的科研文献,提取关键的研究结论和证据,帮助构建中医药研究的证据体系。 综上所述,ChatGPT在中医药现代化中的应用潜力巨大,不仅能够提升教育和临床实践的效率,还能加强科学论证,推动中医药的数字化型和国际化进程。想要深入了解ChatGPT如何具体应用在中医药现代化中,以及其面临的挑战和未来发展方向,推荐阅读《ChatGPT在中医药现代化中的潜力与应用探索》一书。 参考资源链接:[ChatGPT在中医药现代化中的潜力与应用探索](https://wenku.youkuaiyun.com/doc/5wwswt7u3o?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值