为什么我写的ajax读不出本地文本?下面是html和js
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="ajax.js"></script>
<script>
window.onload=function ()
{
var oBtn=document.getElementById('btn1');
oBtn.onclick=function ()
{
//ajax能且仅能 从服务器读取文件
//alert('abc.txt?t='+new Date().getTime());
ajax('abc.txt?t='+new Date().getTime(), function (str){
alert(str);
});
};
};
</script>
</head>
<body>
点击按钮的时候,读取abc.txt<br />
<input id="btn1" type="button" value="读取" />
</body>
</html>
function ajax(url, fnSucc, fnFaild)
{
//1.创建Ajax对象
var oAjax=null;
if(window.XMLHttpRequest)
{
oAjax=new XMLHttpRequest();
}
else
{
oAjax=new ActiveXObject("Microsoft.XMLHTTP");
}
//2.连接服务器
oAjax.open('GET', url, true);
//3.发送请求
oAjax.send();
//4.接收服务器的返回
oAjax.onreadystatechange=function ()
{
if(oAjax.readyState==4) //完成
{
if(oAjax.status==200) //成功
{
fnSucc(oAjax.responseText);
}
else
{
if(fnFaild)
fnFaild(oAjax.status);
}
}
};
} 展开
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="ajax.js"></script>
<script>
window.onload=function ()
{
var oBtn=document.getElementById('btn1');
oBtn.onclick=function ()
{
//ajax能且仅能 从服务器读取文件
//alert('abc.txt?t='+new Date().getTime());
ajax('abc.txt?t='+new Date().getTime(), function (str){
alert(str);
});
};
};
</script>
</head>
<body>
点击按钮的时候,读取abc.txt<br />
<input id="btn1" type="button" value="读取" />
</body>
</html>
function ajax(url, fnSucc, fnFaild)
{
//1.创建Ajax对象
var oAjax=null;
if(window.XMLHttpRequest)
{
oAjax=new XMLHttpRequest();
}
else
{
oAjax=new ActiveXObject("Microsoft.XMLHTTP");
}
//2.连接服务器
oAjax.open('GET', url, true);
//3.发送请求
oAjax.send();
//4.接收服务器的返回
oAjax.onreadystatechange=function ()
{
if(oAjax.readyState==4) //完成
{
if(oAjax.status==200) //成功
{
fnSucc(oAjax.responseText);
}
else
{
if(fnFaild)
fnFaild(oAjax.status);
}
}
};
} 展开
1个回答
2016-04-29 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
1、纯html是无法直接读取txt文件内容的,这是很肯定的没有疑问的。html就是我们常说的静态文件,是无法读取处理服务器或本地机上的TXT文件的。
2、读取txt文件内容可以用JS的ajax读取。ajax读取文本内容原理较为简单,重点基础是熟悉XMLHTTP对象的属性和方法。
相关例子:
<script>
function dotxt(){
var request=null;
if(window.XMLHttpRequest){request=new XMLHttpRequest();}else if(window.ActiveXObject){request=new ActiveXObject("Microsoft.XMLHTTP");}
if(request){
request.open("GET","1.txt",true);'测试读取1.txt的内容
request.onreadystatechange=function(){
if(request.readyState===4){
if (request.status == 200 || request.status == 0){
document.getElementById("vv").innerHTML=request.responseText;
}
}
}
request.send(null);
}else{
alert("error");
}
}
</script>
<input type="button" value="读取" onclick="dotxt();"/>
<div id="vv"></div>
2、读取txt文件内容可以用JS的ajax读取。ajax读取文本内容原理较为简单,重点基础是熟悉XMLHTTP对象的属性和方法。
相关例子:
<script>
function dotxt(){
var request=null;
if(window.XMLHttpRequest){request=new XMLHttpRequest();}else if(window.ActiveXObject){request=new ActiveXObject("Microsoft.XMLHTTP");}
if(request){
request.open("GET","1.txt",true);'测试读取1.txt的内容
request.onreadystatechange=function(){
if(request.readyState===4){
if (request.status == 200 || request.status == 0){
document.getElementById("vv").innerHTML=request.responseText;
}
}
}
request.send(null);
}else{
alert("error");
}
}
</script>
<input type="button" value="读取" onclick="dotxt();"/>
<div id="vv"></div>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询