火狐中 js file的操作不兼容如何解决? 15
<!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>
<head>
<title>File Input</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style>
body{font-size:13px;}
.box{border:1px solid #eee;background:#ffe;padding:10px 30px;margin:10px;}
dt{font-weight:bold;}
dt,img,textarea{margin:8px 0;}
em{color:#f00; font-style:normal;}
span{color:#999;}
.ft{color:#999;font-size:11px;text-align:right}
</style>
</head>
<body>
<h2>在不同浏览器中获取File Input的value</h2>
<div class="box">
<input type="file" name="foo" id="foo" size="60" />
<input type="button" value="Show Value in FF3" onclick="CheckWorkFile()" />
</div>
<script language="JavaScript">
function getValueFF(id){
var ip = document.getElementById(id);
if (ip.files) {
//ffx3 - try to have access to full path
try {
netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead' )
}
catch (err) {
//need to set signed.applets.codebase_principal_support to true
}
};
return ip.value;
}
//检验文件上传文件是不是.txt;
function CheckWorkFile()
{
var obj=document.getElementById('foo');
if(obj.value=='')
{
alert('请选择要上传的作业书文件');
return false;
}
var stuff=obj.value.match(/^(.*)(\.)(.{1,8})$/)[3]; //这个文件类型正则很有用:)
if(stuff!='txt')
{
alert('上传类型不正确,请上传.txt文件!');
return false;
}
else
{
alert(getValueFF('foo'));
filereader(getValueFF('foo'));
}
return true;
}
//对上传文件进行操作
function filereader(obj)
{
var fso, f1, ts, s;
var ForReading = 1;
fso = new ActiveXObject("Scripting.FileSystemObject");
alert("ddd");
ts = fso.OpenTextFile(obj,ForReading);
s = ts.ReadLine();
alert("File contents = ’" + s + "’");
}
</script>
</body>
</html>
在ie中,可以读出上传文件的内容,在火狐浏览器下读不出上传文件的内容?这问题怎么解决?火狐浏览器中js对文件操作的代码不兼容是吗? 展开
<html>
<head>
<title>File Input</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style>
body{font-size:13px;}
.box{border:1px solid #eee;background:#ffe;padding:10px 30px;margin:10px;}
dt{font-weight:bold;}
dt,img,textarea{margin:8px 0;}
em{color:#f00; font-style:normal;}
span{color:#999;}
.ft{color:#999;font-size:11px;text-align:right}
</style>
</head>
<body>
<h2>在不同浏览器中获取File Input的value</h2>
<div class="box">
<input type="file" name="foo" id="foo" size="60" />
<input type="button" value="Show Value in FF3" onclick="CheckWorkFile()" />
</div>
<script language="JavaScript">
function getValueFF(id){
var ip = document.getElementById(id);
if (ip.files) {
//ffx3 - try to have access to full path
try {
netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead' )
}
catch (err) {
//need to set signed.applets.codebase_principal_support to true
}
};
return ip.value;
}
//检验文件上传文件是不是.txt;
function CheckWorkFile()
{
var obj=document.getElementById('foo');
if(obj.value=='')
{
alert('请选择要上传的作业书文件');
return false;
}
var stuff=obj.value.match(/^(.*)(\.)(.{1,8})$/)[3]; //这个文件类型正则很有用:)
if(stuff!='txt')
{
alert('上传类型不正确,请上传.txt文件!');
return false;
}
else
{
alert(getValueFF('foo'));
filereader(getValueFF('foo'));
}
return true;
}
//对上传文件进行操作
function filereader(obj)
{
var fso, f1, ts, s;
var ForReading = 1;
fso = new ActiveXObject("Scripting.FileSystemObject");
alert("ddd");
ts = fso.OpenTextFile(obj,ForReading);
s = ts.ReadLine();
alert("File contents = ’" + s + "’");
}
</script>
</body>
</html>
在ie中,可以读出上传文件的内容,在火狐浏览器下读不出上传文件的内容?这问题怎么解决?火狐浏览器中js对文件操作的代码不兼容是吗? 展开
2个回答
展开全部
您好!很高兴为您答疑!
因为安全原因,火狐是禁止JS获取本地文件的绝对路径的,所以无法获取文件,这是正常的,您将文件上传至服务器中再调试。
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
因为安全原因,火狐是禁止JS获取本地文件的绝对路径的,所以无法获取文件,这是正常的,您将文件上传至服务器中再调试。
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询