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参数表示错误信息
}
});
还有弄不清楚的地方可以继续和我探讨。