1. 怎樣用js實現讀取伺服器中的json文件並將文件件中的數據保存在數組中
,參考例子如下:
<html>
<head>
<title>JS操作文本文件</title>
</head>
<body>
<script>
var arr = 1;
function Write2Text()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.CreateTextFile("a.txt", true);
f.write(arr);
f.Close();
}
</script>
<input type=button value="Write" onclick="Write2Text()">
<script>
function GetHeader(src) {
var ForReading=1;
var fso=new ActiveXObject("Scripting.FileSystemObject");
var f=fso.OpenTextFile(src,ForReading);
return(f.ReadAll());
}
function ReadText(){
var arr=GetHeader("a.txt").split("\r\n");
for(var i=0;i<arr.length;i++){
alert("第"+(i+1)+"行數據為:"+arr[i]);
}
}
</script>
<input type=button value="Read" onclick="ReadText()">
</body>
</html>
2. js璇誨彇xml鑺傜偣鐨勬暟鎹
JavaScript鍙浠ラ氳繃澶氱嶆柟寮忚誨彇XML鑺傜偣鐨勬暟鎹銆傚叾涓涓縐嶅父瑙佺殑鏂瑰紡鏄浣跨敤XMLHttpRequest瀵硅薄鏉ュ姞杞絏ML鏂囦歡錛屽苟閫氳繃DOM鎿嶄綔鏉ヨВ鏋愬拰鎻愬彇鑺傜偣鏁版嵁銆
鍘熷洜錛
1. XML鏍煎紡鐨勬暟鎹鍙浠ヨ瑙f瀽鎴愬叿鏈夊眰綰х粨鏋勭殑DOM鏍戱紝JavaScript鍙浠ュ埄鐢―OM鎿嶄綔鏂規硶鏉ラ亶鍘嗗拰鑾峰彇XML鑺傜偣鐨勬暟鎹銆
2. XMLHttpRequest瀵硅薄鍙浠ュ紓姝ュ姞杞絏ML鏂囦歡錛屼嬌寰楅〉闈㈠湪絳夊緟XML鏂囦歡鍔犺澆瀹屾垚鐨勫悓鏃跺彲浠ョ戶緇鎵ц屽叾浠栨搷浣滐紝鎻愰珮浜嗛〉闈㈢殑鍝嶅簲閫熷害鍜岀敤鎴蜂綋楠屻
鎷撳睍錛
闄や簡浣跨敤XMLHttpRequest瀵硅薄鍜孌OM鎿嶄綔鏉ヨ誨彇XML鑺傜偣鏁版嵁澶栵紝榪樺彲浠ヤ嬌鐢ㄥ叾浠栧簱鎴栨嗘灦鏉ュ勭悊XML鏁版嵁錛屽俲Query涓鐨$.ajax()鏂規硶銆丗etch API絳夈傛ゅ栵紝濡傛灉XML鏂囦歡杈冨ぇ鎴栭渶瑕侀戠箒瑙f瀽XML鏁版嵁錛屽彲浠ヨ冭檻浣跨敤SAX瑙f瀽鍣ㄦ垨StAX瑙f瀽鍣ㄧ瓑鍩轟簬浜嬩歡椹卞姩鐨勮В鏋愭柟寮忥紝浠ユ彁楂樻ц兘鍜屾晥鐜囥傚彟澶栵紝鐜頒唬鐨勫墠絝寮鍙戜腑錛岃秺鏉ヨ秺澶氱殑搴旂敤灝咼SON鏍煎紡浣滀負鏁版嵁浜ゆ崲鐨勯栭夛紝鍥犱負JSON鍏鋒湁鏇寸畝媧併佹槗璇誨拰鏄撹В鏋愮殑鐗圭偣錛屾墍浠ュ湪瀹為檯寮鍙戜腑錛屾垜浠涔熷彲浠ュ皢XML鏁版嵁杞鎹涓篔SON鏍煎紡榪涜屽勭悊銆
3. 怎樣實現用ajax向伺服器發送請求並接收伺服器返回的數據,並在HTML頁面的Table中顯示
比如伺服器上有張表或者list
id name sex
1 張三 男
2 李四 女
3 王五 男
你首先在後台掘蔽或代碼中把這個表處理成為JSON格式然後用Response.write的方法輸出來,比如這樣
[{id:1,name:'張三',sex:'男'},{id:2,name:'李四',sex:'女'},{id:3,name:'王五',sex:'男'}]
JSON是用於在JS中描述實體對象的一種方式,具體關於JSON的知識可以看w3school.com.cn上的相關內容,我這兒就不給你細講了,很簡單,我只說做法:
為了方便使用,你需要在你的頁面中引用jQuery庫,我不知道你用什麼語言做的後台程序,原理一樣
$.ajax({
url:"這里換成你寫好的用於把表轉換成JSON的後台處理文件地址,比如a.aspx?參數",
type:"POST",//這里是AJAX請求的方式判伍
dataType:"JSON",//如果你回發的內容是JSON格式的就用這個,否則用Text或其他
data:{
參數1:值,
參數2:值,
......
參數n:值
},//要發送的參數,如果無參數可以不寫此項
success:function(data)
{
//此處寫入發送成功後要處理的代碼,而參數里的這個data,就是請求成功並運後返回來的上面那個格式的JSON,你可以用data[i]的值來取其中一行,如取張三的數據就是
data[0].name,就取出了張三的name屬性
所以你可以在這里用循環去處理data,然後將結果用document.write的方式輸出來就完成了。
},
error:function(XMLHttpRequest,Error,F)
{
//出錯後可以在這里給出提示,Error參數表示錯誤信息
}
});
還有弄不清楚的地方可以繼續和我探討。