inputfile,input file 怎么获得file
各位老铁们好,相信很多人对inputfile都不是特别的了解,因此呢,今天就来为大家分享下关于inputfile以及input file 怎么获得file的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
input file 怎么获得file
input file怎么获得file
<script type="text/javascript">
//FX获取文件路径方法
function readFileFirefox(fileBrowser){
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}
catch(e){
alert('无法访问本地文件,由于浏览器安全设置。为了克服这一点,请按照下列步骤操作:(1)在地址栏输入"about:config";(2)右键点击并选择 New->Boolean;(3)输入"signed.applets.codebase_principal_support"(不含引号)作为一个新的首选项的名称;(4)点击OK并试着重新加载文件');
return;
}
var fileName=fileBrowser.value;//这一步就能得到客户端完整路径。下面的是否判断的太复杂,还有下面得到ie的也很复杂。
var file= Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
try{
// Back slashes for windows
file.initWithPath( fileName.replace(/\//g,"\\\\"));
}
catch(e){
if(e.result!=Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e;
alert("File'"+ fileName+"' cannot be loaded: relative paths are not allowed. Please provide an absolute path to this file.");
return;
}
if( file.exists()== false){
alert("File'"+ fileName+"' not found.");
return;
}
return file.path;
}
//根据不同浏览器获取路径
function getvl(){
//判断浏览器
var Sys={};
var ua= navigator.userAgent.toLowerCase();
var s;
(s= ua.match(/msie([\d.]+)/))? Sys.ie= s[1]:
(s= ua.match(/firefox\/([\d.]+)/))? Sys.firefox= s[1]:
(s= ua.match(/chrome\/([\d.]+)/))? Sys.chrome= s[1]:
(s= ua.match(/opera.([\d.]+)/))? Sys.opera= s[1]:
(s= ua.match(/version\/([\d.]+).*safari/))? Sys.safari= s[1]: 0;
var file_url="";
if(Sys.ie<="6.0"){
//ie5.5,ie6.0
file_url= document.getElementById("file").value;
}else if(Sys.ie>="7.0"){
//ie7,ie8
var file= document.getElementById("file");
file.select();
file_url= document.selection.createRange().text;
}else if(Sys.firefox){
//fx
//file_url= document.getElementById("file").files[0].getAsDataURL();//获取的路径为FF识别的加密字符串
file_url= readFileFirefox(document.getElementById("file"));
}
//alert(file_url);
document.getElementById("text").innerHTML="获取文件域完整路径为:"+file_url;
}
</script>
<h1>JS获取文件域完整路径的方法,兼容不同浏览器</h1>
<div id="text" style="color:#f00;"></div>
<input type="file" id="file"/>
<input name="" type="button" value="获取" onClick="getvl();">
input type="file" 理解
if(e.target.accept !='image/png'){
return alert('即使input标签上已经有accept格式的显示,但在用户上传可以从所有文件中选其他格式的文件,所以第二次处理格式’)
}
if(e.target.files[0].size>1024*1024*1){
return alert('上传文件不能大于1M')
}
if(e.target.files.length>1){
return alert('只能上传1个文件')
}
var url= window.webkitURL.createObjectURL(file); //上传图片预览路径
每个file对象包含以下属性:
lastModified:数值,表示最近一次修改时间的毫秒数;
lastModifiedDate:对象,表示最后一次表示最近一次修改时间的Date对象(高程中说是字符串,根据上图可看出应该为对象,为了层级清晰未对其展开,大家可自行查看,其可调用Date对象的有关方法,例如getDay方法);
name:本地文件系统中的文件名;
size:文件的字节大小;
type:字符串,文件的MIME类型; --> 上传文件类型<input accept="文件类型" type="file">
weblitRelativePath:此处为空;当在input上加上webkitdirectory属性时,用户可选择文件夹,此时weblitRelativePath表示文件夹中文件的相对路径 比如:
FileReader是一种异步文件读取机制,结合input:file可以很方便的读取本地文件。我们可以通过html5提供的FileReader读取到文件中的数据。
参考博客: https://www.cnblogs.com/youhong/p/7221080.html?utm_source=itdadao&utm_medium=referral
参考博客: https://www.cnblogs.com/fozero/p/8835628.html
如何获取input file的值
不是没有人回答你,是你的问题有问题:
先回答你的问题吧:
设你的表单如下:
<form name="myform">
<input type="file" name="file"/>
<imput type="submit" name=""/>
</form>
以上这段代码中form标签的名字是 myform,然后其中有你的input file。
这样的话,可以这样取得其中的值:var upFile=document.myform.file.value
变量upFile中就是你上传的值。
===========================================
看你的问题好像是javaScript和html相关的问题啊,反正我不懂ASP,如果你问问题的话,一定要在标题中存在 js、html、asp、php等关键字,否则很难有太满意的答案的。
比如有一次就问一个字体的名字,160分的高分竟然没有回答,我就晕了,还有个骗子想骗我,我更晕了。
后我我才发现,我的问题竟然跑到生活类里去了,能有几人知道啊,后来干脆改名:艺术,寻找艺术LOGO字体。嘿嘿,别说,6分钟有答案,而且还后加分。
怎样给input file 赋值。即设定默认值。
这个问题,首先不考虑楼动机是什么,至于楼主提出来,即有这个需求:
解决方案:
1.可以在表单内设置一个隐藏层,其中包含一个INPUT FILE元素,这个才后台获取的真正来源,这个你懂的;
2.用样式,把INPUT,FILE的表现在表单的颜色设置与背景色一样,值为默认的,字体边框等等与背景色一样,且设置可读不可写模式,这样一来,客户端就好看不到这个表单元素,但他确实存在,也符合楼主的要求,简单明了;通常背景为白,那么,你input file这个表单元素,所有的样式全指定为白色即可;
好了,文章到此结束,希望可以帮助到大家。