获取在HTML输入中选择的文件的绝对文件名,而不是路径

坦迈维吉

我正在使用标签标签进行文件输入:

<label for="file" style="cursor: pointer">
    <img src="plus.png"><span id="file-text">Select a file</span>
</label>

用户选择文件后,我希望标签的文本更改为所选文件的文件名,而不是路径。

<input type="file" id="file" style="display: none" onchange="document.getElementById('file-text').innerHTML = this.value"/>

Google Chrome浏览器即将回归

C:\ fakepath \ filename.jpg

Microsoft Edge返回本地文件系统上文件的完整正确路径。

我试过了split函数:

 onchange="var path = this.value.split('\'); document.getElementById('file-text').innerHTML = 'path[path.length-1]'"

但是现在它什么也没返回。文本不再更改。是否可以用内联脚本完成此操作,或者我必须使用单独的功能?

cfillion

您可以从的files属性访问文件名<input type="file"/>该文件名FileList包含所有添加的文件)。files[0]将为您提供第一个文件作为File对象。file.name将为您获取文件名。

var input = document.getElementById('file');
var label = document.getElementById('file-text');

input.addEventListener('change', function() {
  if(input.files.length > 0)
    label.textContent = input.files[0].name;
  else
    label.textContent = 'Select a file';
});
<label for="file" style="cursor: pointer">
  <img src="plus.png"><span id="file-text">Select a file</span>
</label>

<input type="file" id="file" style="display: none"/>

内联版本:

<label for="file" style="cursor: pointer">
  <img src="plus.png"><span id="file-text">Select a file</span>
</label>

<input type="file" id="file"
  onchange="document.getElementById('file-text').textContent = this.files.length > 0 ? this.files[0].name : 'Select a file'"
  style="display: none" />

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从包含绝对文件路径的字符串中获取文件名?

如何在Powershell脚本中解析相对或绝对文件名输入参数的绝对路径?

如何获取绝对文件名的非目录部分?

给定文件名获取其绝对路径

nodejs从绝对路径获取文件名?

获取Python中绝对文件路径的目录路径

使用Tramp主机信息扩展绝对文件名

错误的绝对文件路径

查找绝对文件路径

如何用文件上传对话框中选择的绝对文件路径的值填充<input type =“ text”>?

遍历目录时仅获取文件名,而不是路径

使用Python pathlib获取没有文件名的文件的绝对路径

如何在Python中获取绝对文件路径

获取Django中模型实例的FileField的绝对文件路径

从内容URI获取搜索图像的绝对文件路径

获取不带文件名的文件的路径

使用dart:HTML库在Flutter Web中选择文件时,如何在Flutter中获取文件名?

从文件路径中选择文件名:无效的 perl 运算符:(?=

在Bash中选择Unicode文件名

Android Kotlin:获取FileNotFoundException并从文件选择器中选择文件名?

PyQt5-从打开的文件而不是文件路径中获取文件名

如何获取与给定dlopen的相对路径相对应的绝对库文件名?

如何获取当前javascript文件名的绝对路径

获取文件名和绝对路径的问题-Laravel 5 PHP

如何使用jQuery从输入类型文件中获取选定的文件名和文件路径

sed:给定文件名w /绝对路径,仅对文件名进行替换。仅当模式位于文件名开头时才有效

.sh 文件返回文件路径而不是文件名

在Golang中设置绝对文件路径

从绝对文件路径构建JSON对象