Javascript 如何使用java脚本在文件上传中获得无扩展名的文件名
我将使用asp.net中的文件上载控件上载文件。现在我想使用java脚本获取不带扩展名的文件名。 我想验证文件名是否应仅为整数格式Javascript 如何使用java脚本在文件上传中获得无扩展名的文件名,javascript,asp.net,file-upload,Javascript,Asp.net,File Upload,我将使用asp.net中的文件上载控件上载文件。现在我想使用java脚本获取不带扩展名的文件名。 我想验证文件名是否应仅为整数格式 $(function () { $('#<%=File1.ClientID %>').change(function () { var uploadcontrol = document.getElementById('<%=File1.ClientID%>').value; }) }) $(函数(){ $(
$(function () {
$('#<%=File1.ClientID %>').change(function () {
var uploadcontrol = document.getElementById('<%=File1.ClientID%>').value;
})
})
$(函数(){
$('#')。更改(函数(){
var uploadcontrol=document.getElementById(“”).value;
})
})
您可以根据点('.'的最后一个实例对其进行拆分
var uploadcontrol=document.getElementById(“”).value;
uploadcontrol=uploadcontrol.split('.')[uploadcontrol.split('.').length-2];
但是,
这仅适用于简单情况。。。下面给出了一个更好的通用答案
在通用解决方案中解决这些问题
- 摆脱/或走到最后一步/
- 如果字符串有多个点('.'),则只删除最后一个点之后的字符串
$('#test').change(function() {
//something like C:\fakepath\1.html
var fpath = this.value;
fpath = fpath.replace(/\\/g, '/');
var fname = fpath.substring(fpath.lastIndexOf('/')+1, fpath.lastIndexOf('.'));
console.log(fname);
});
使用
此
而不是DOM查询来获取当前文件输入。此问题获取带扩展名的文件名,但我的问题是获取不带扩展名的文件名!!!!!“重复”问题不是问同样的问题。这一问题要求将延长期限也删除。为什么每个人都不看一眼就把遇到的每一个问题都解决了?绝对不是重复的.document.location.pathname.replace(/(.[\/\]+\w+$)/gm,)uploadcontrol.split.length
这是什么黑魔法?@Tommi这是JavaScript黑魔法。。这为我们提供了拆分功能。读了这篇文章,我们得到了一个基于点(.)号的字符串列表是的,但是你如何得到函数本身的长度,以及它对你有什么作用?你试过运行你的代码吗?好的,我试过了,它可以运行。但是我不懂这个技巧,我会读更多的。@Tommi函数返回一个数组,因此它是有效的
$('#test').change(function() {
//something like C:\fakepath\1.html
var fpath = this.value;
fpath = fpath.replace(/\\/g, '/');
var fname = fpath.substring(fpath.lastIndexOf('/')+1, fpath.lastIndexOf('.'));
console.log(fname);
});