問題討論區


【JavaScript 語法】問題討論區


【問題】 請問如何將已經使用非同步抓到的資料依照分數高低排序依序掛上去



請問如何將已經使用非同步抓到的資料依照分數高低排序依序掛上去
會員一級
註冊日期:
2012/6/15 4:08
留言: 1
我有在自己的電腦安裝APPSERVE
然後在裡面新增了數筆資料
並且我可以使用非同步讀取出來

但是 就在非同步讀取出來時 我想要依照學生分數高低排序
一直研究不出來
所以請問各位有何見解
程式碼如下:


var reqObj;
function readFileAsync() // 以非同步方式讀取檔案
{
var url = "ajax_get_score.php?t=" + Math.random();
reqObj = new XMLHttpRequest(); // 建立 XMLHttpRequest 物件
reqObj.onreadystatechange = getXmlDom; // 設定狀態改變後,要執行的事件處理程式
reqObj.open( "GET", url, true ); // 設定非同步的 HTTP 需求
reqObj.send(); // 送出 HTTP 需求
}
function getXmlDom()
{
if ( (reqObj.readyState==4) && (reqObj.status==200) )
{
var xObj = reqObj.responseXML;
processXmlDom( xObj ); // 執行處理 XML DOM 的函式
}
}
function processXmlDom( xmlDoc )
{
var tmp ="";
var tbody = document.getElementById("tb").childNodes[1];
var numCol = tbody.childNodes[0].childNodes.length;
var numStu = xmlDoc.getElementsByTagName("Student").length;
var all1 = new Array(numStu);
var all2 = new Array(numStu);



for ( i=0; i<=numStu; i++ )
{
var sObj = xmlDoc.getElementsByTagName("Student")[i];
tr = document.createElement("tr");

for ( j=0; j {


var txt = sObj.childNodes[j].childNodes[0].nodeValue;
td = document.createElement("td");
tn = document.createTextNode(txt);
if ( j>=2 && txt<60 ) td.setAttribute("style","color:red;");
td.appendChild(tn);
tr.appendChild(td);
}

for( x=0 ; x<=i; x++)
{

var numChin = xmlDoc.getElementsByTagName("chinese") [x].childNodes[0].nodeValue;
var numChin2 = xmlDoc.getElementsByTagName("chinese")[x+1].childNodes[0].nodeValue;

all1[x] = numChin;
all2[x] = numChin2;

if(all1[x] {
tbody.appendChild(tr);
}
else
{
tbody.insertBefore(tr,tbody.firstChild);
}
}

}

}

2012/6/15 4:15
 









[高級搜索]


 

課程首頁】 【最新開課時間表】 【範例教學分享區】 【交流討論區】 【企業包班】 【詢問課程】 【合作提案】 【誠徵講師

 

【飛肯設計學苑】 台北市公園路 30-1 號 5 樓 聯絡電話:(02)2370-1122 / 0925-014-000 信箱:flycan@flycan.com.tw
服務時間:(平日)下午 2 點 ~ 晚上 10 點 / (假日)早上 9 點 ~ 下午 5 點

 

台北市短期補習班立案 第 6631 號

TOP

【 Flycan.com 】 Powered by XOOPS