迴響
真是好學不倦的鼻~
//建立一個請求物件
var request = null;
function createRequest(){
try{
request = nwe XMLHttpRequest();
//如果是IE系列的瀏覽器,不能用XMLHttpRequest的方法,要用其他種代替。
} catch (trymicrosoft){
try{
request = new ActiveXObject("MsXML2.XMLHTTP");
} catch (othermicrosoft){
try{
request = new ActiveXObject("Microsoft.XMLHTTP");
}catch(failed){
request = null;
}
}
}
if(request = null)
alert("Error creating request object");
}
function getBoardsSold(){
createRequest();
var url = "getUpdateBoardSales-Ajax.php";
//true is 非同步, false is 非同步
request.open("GET", url, true);
//必須在發出請求之前(before send function),就要告訴瀏覽器,要怎麼處理伺服器對此請求的回應。
//如果你將一個函式的名字放在這裡,當瀏覽器從伺服器得到回應時,瀏覽起將執行此函式。
//JavaScript要求這裡只能有函式的名字,後面不能放上括號。
request.onreadystatechange = updatePage;
//這表示沒有資料隨著這個請求一起送出,所以每次被執行時,他就只是傳回我們要的結果。
request.send(null);
}
function updatePage(){
//readySate(備妥狀態)是請求物件的屬性,用來儲存目前的備妥狀態。
//當readyState為4時,代表伺服器已經完成該請求。
if(request.readyState == 4){
var newTotal = request.responseText;
//利用id值,取得在網頁上的這些元素
var boardsSoldEl = document.getElementById("boards-sold");
var cashEl = document.getElementById("cast");
//取代前者的文字,使其成為後者。這是要自己另外寫的一個JavaScript函式。
repalceText(boardsSoldEl, newTotal);
}
}
網頁中的部分內容
<body>
<div id="boards">
<table>
<tr><th>SnowBoards Sold</th>
<td><span id="boards-sold">1012</span></td></tr>
....
</table>
</div>
</body>