知识准备: 方法XHR.readyState五种状态 XHR.readyState == 状态(0,1,2,3,4) 0:请求未初始化,还没有调用 open()。 1:请求已经建立,但是还没有发送,还没有调用 send()。 2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。 3:请求在
知识准备:
方法XHR.readyState五种状态
XHR.readyState == 状态(0,1,2,3,4)
0:请求未初始化,还没有调用 open()。
1:请求已经建立,但是还没有发送,还没有调用 send()。
2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。
3:请求在处理中;通常响应中已有部分数据可用了,没有全部完成。
4:响应已完成;您可以获取并使用服务器的响应了。
方法XHR.status常见的几种状态
XHR.status == 200,300,404 等
100——客户必须继续发出请求
101——客户要求服务器根据请求转换HTTP协议版本
200——成功
201——提示知道新文件的URL
300——请求的资源可在多处得到
301——删除请求数据
404——没有发现文件、查询或URl
500——服务器产生内部错误
制作进度条的原理:
通过XHR.readyState ==1,来判断是否出现进度条;通过XHR.readyState ==4和XHR.status ==200来判断是否服务器已经成功的完成响应。
实例代码:
(代码根据上一个例子进行部分修改,可以参考:Ajax+PHP快速上手及简单应用)
index.html
<!--index.html--> <script src="test.js" type="text/javascript"></script> <a href="#" onclick="php100(1)">1</a> || <a href="#" onclick="php100(2)">2</a> || <a href="#" onclick="php100(3)">3</a> <div id="php100"></div>
do.php
// do.php <?PHP $id=@$_GET[id]; for($i=1;$i<3;$i++){ echo $i."------".$id."<br/>"; sleep(1); //为了使响应时间不至于过快,使用sleep函数模拟响应时间 }
test.js
// JavaScript Document var xmlHttp; function S_xmlhttprequest(){ if(window.ActiveXObject){ xmlHttp=new ActiveXObject('Microsoft.XMLHTTP'); }else if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); } } function php100(url){ S_xmlhttprequest(); xmlHttp.open("GET","do.php?id="+url,true); xmlHttp.onreadystatechange=byphp; xmlHttp.send(null); } function byphp(){ if(xmlHttp.readyState==1){ document.getElementById('php100').innerHTML="<image src="%5C%221.gif%5C%22">";//等待响应显示进度条 } if(xmlHttp.readyState==4){//响应完成 if(xmlHttp.Status==200) {//响应成功 var byphp100=xmlHttp.responseText; document.getElementById('php100').innerHTML=byphp100; } } } </image>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。
