js获取上传文件名称
1. 怎么用js来获取 file中的上传文件的文件名
在firefox上,input(type=file)默认获取到的value值就是文件名。
在IE上,input(type=file)默认获取到的value值是路径。
因此用js来获取fileupload中的上传文件的文件名需要多方面考虑。
示例代码:
<form action="" method="get" onSubmit="return false;">
<input type="text" name="test" id="test">
<input type="file" name="testFile" onChange="if(this.value)insertTitle(this.value);">
<input type="submit" value="提交">
</form>
<script language="javascript">
function insertTitle(path){
var test1 = path.lastIndexOf("/"); //对路径进行截取
var test2 = path.lastIndexOf("\\"); //对路径进行截取
var test= Math.max(test1, test2)
if(test<0){
document.getElementById("test").value = path;
}else{
document.getElementById("test").value = path.substring(test + 1); //赋值文件名
}
}
</script>
2. js怎么获取上传文件的文件的扩展名
代码:
<script language="JavaScript">
var a="abc.jpg";
function test(file_name){
var result =/\.[^\.]+/.exec(file_name);
return result;
}
var b=test(a);
alert(b);
</script>
3. javascript获取上传的文件名,去掉文件的后缀名
你设置一个变量,去接收一下,接收的这个要经过截去子串的处理,取到你想要的那部分比如说:
var s1=new Array();
var str=data; //data 就是传过来的文件名
s1=str.split(str.lastIndexOf(“.”)),你想要的就在 s1[0]中,而 . 是文件名与后缀名的分界线,根据它去截去
4. JS动态创建的file控件,php 怎么获取上传的文件
首先,你的file控件要放到form表单内,其次,每个file控件的name属性应该不同。下面是我修改后的:
<html>
</head>
<script language="javascript" type="text/ecmascript">
var x=1;
//======================
//功能:在表单中input file控件
//参数:parentID---要插入input file控件的父元素ID
// inputID----input file控件的ID
//======================
function createInput(parentID,inputFileID){
var parent=$(parentID);//获取父元素
var div=document.createElement("div");//创建一个div容器用于包含input file
x++;
var divName=inputFileID+x;//随机div容器的名称
div.id=divName;
var aElement=document.createElement("input"); //创建input
aElement.name=divName;
aElement.type="file";//设置类型为file
var delBtn=document.createElement("input");//再创建一个用于删除input file的Button
delBtn.type="button";
delBtn.value="删除";
delBtn.onclick=function(){ removeInput(parentID,divName)};//为button设置onclick方法
div.appendChild(aElement);//将input file加入div容器
div.appendChild(delBtn);//将删除按钮加入div容器
parent.appendChild(div);//将div容器加入父元素
}
//============================
//功能:删除一个包含input file的div 容器
//参数:parentID---input file控件的父元素ID
// DelDivID----个包含input file的div 容器ID
//============================
function removeInput(parentID,DelDivID){
var parent=$(parentID);
parent.removeChild($(DelDivID));
}
//通过元素ID获取文档中的元素
function $(v){return document.getElementById(v);}
</script>
<body>
<form action="test.php" method="post" enctype="multipart/form-data">
<div align="left" id="div_Pic" style="border:1px solid #CCCCCC">
<input name="PicFile" type="file" id="ShowPicFile">
</div>
<input type="button" onClick="createInput('div_Pic','PicFile')" name="button" id="button" value="+ 继续添加图片">
<input type="submit" value="提交">
</body>
</html>
然后php就可以通过遍历$_FILES来获得每个上传的文件。下面的简单例子只是列出每个文件的原文件名:
<?php
forEach($_FILES as $f){
echo $f["name"]."<br>";
}
?>
5. Js/Jquery获取input file的文件名
字符串截取
varfile=$("#file").val();
varfileName=getFileName(file);functiongetFileName(o){varpos=o.lastIndexOf("\");returno.substring(pos+1);}方法二:正则表达式
varfile=$("#file").val();
varstrFileName=file.replace(/^.+?\([^\]+?)(.[^.\]*?)?$/gi,"$1");//正则表达式获取文件名,不带后缀varFileExt=file.replace(/.+./,"");//正则表达式获取后缀
拓展资料:
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。
6. JS如何读取上传文件的后缀名
function up(file){
//文件后缀可以通过 打印 file.file 可以看出来
console.log(file.file);
}
7. java或js(可用jquery)如何获取上传文件原始路径名
上传文件时,我想获取客户端上传文件的原始路径。第一考虑,当然是使用js,例如网上可以找到的:
function getPath(obj) { if (obj) { if (window.navigator.userAgent.indexOf("MSIE") >= 1) { obj.select(); return document.selection.createRange().text; } else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { if (obj.files) { return obj.files.item(0).getAsDataURL(); } return obj.value; } return obj.value; } } 但这样的代码在Ie下还是可行的,但在火狐下不兼容。所以又想通过servlet的第三方工具去做,例如FileUpload,本以为FileItem下的getName()方法能够得到全路径名,但结果仍然只得到文件名,很是杯具!求解决方法!?
引用至于你说的,不明白你的意思关键问题是我要获得这个路径,并且传递到后台!用js会有兼容性问题,如果用FileUpload上传,是否可以获得呢?我是没有得到的!!! 问题补充:zhanjia 写道上传文件一般用input标签,type为file,浏览选择文件后就是文件在本地的绝对路径了
引用至于你说的,不明白你的意思关键的问题是我要获得这个本地路径,并且传到后台!用js可以得到,但存在兼容性问题!?如果用FileUpload呢?我暂时还没有得到!!! 问题补充:zhanjia 写道网上的一些解决方案:
一般都是上传以后在数据库中保存上传后的文件路径,本地路径一般没意义
除非像上面所说的文件上传预览,还有那么点用处
我用来做数据接口的,我仅仅是把路径传给另一个系统,然后那个系统就可以从这个路径取文件了。
8. 用JS如何取得上传文件的名称
我就知道路径document.getElementById("那个的id").value
下面的只做个参考
function
getFileName()
{
var
path
=
document.getElementById("Main_FileUpload1").value;
var
pos1
=
path.lastIndexOf("\\");
alert(pos1);
var
pos2
=
path.lastIndexOf(".");
var
pos
=
path.substring(pos1
+
1,
pos2);
alert(path.substring(pos1+1,pos2));
}
Main_FileUpload1是你的那个上传的ID,我也在搞这个,搞好了,正巧也是用asp。net
9. 高手们求救!如何用js得到上传文件的文件名并传到servlet中
现在需要把上传的文件名一并得到,并传给servlet 因为后台servlet有这么句代码
URL url = new URL(file://localhost/D:/soft/tools/java/apache-tomcat-6.0.14/webapps/up/a.txt);为了不让a.txt写死,所以需要从前端获取文件名,(servlet是没法获取文件名的)
10. js文件上传选择文件后如何把文件名称返显
打开出现问题的目录,比如D盘下的文件夹名称/文字不能显示,就打开D盘。
后退至上一个文件夹,即不能显示名称的文件夹位置,只能通过“后退”按钮,不能点击地址栏上该文件夹的位置(键盘快捷键未测试)。