大佬教程收集整理的这篇文章主要介绍了将 css 应用于 input[type=file] 时获取文件名,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试通过 input
获取文件。
我通过 CSS 隐藏输入并给标签一个样式。这里有问题。
如果输入被隐藏,默认输入按钮不支持支持的获取文件名。 我想 Vanila Js 可以解决这个问题,但我不知道该怎么做。 我试图获取文件的值并将其放入指定为内部 HTML 的框中,但没有成功。
在此Answer之后,您可以获得文件名,并使用innerHTML
将其显示给用户。
document.getElementById('test').addEventListener("change",function() {
var fullPath = document.getElementById('test').value;
if (fullPath) {
var starTindex = (fullPath.indexOf('\\') >= 0 ? fullPath.lasTindexOf('\\') : fullPath.lasTindexOf('/'));
var filename = fullPath.subString(starTindeX);
if (filename.indexOf('\\') === 0 || filename.indexOf('/') === 0) {
filename = filename.subString(1);
}
document.getElementById("test2").innerHTML = filename;;
}
});
.submit {
width: 140px;
height: 40px;
BACkground-color: red;
color: #fff;
text-align: center;
padding: 10px;
line-height: 40px;
@R_262_10930@or: pointer;
}
<input type="file" id="test" style="display:none;">
<label for="test">
<span class="submit">submit</span>
<span id="test2">filename</span>
</label>
,
你的 HTML
<input type="file" id="test" style="display:none;">
<label for="test">
<span class="submit">submit</span>
<span id="test2">filename</span>
</label>
你的 CSS
.submit{
width:140px;
height:40px;
BACkground-color:red;
color:#fff;
text-align:center;
padding:10px;
line-height:40px;
@R_262_10930@or:pointer;
}
和 Javascript
let file = document.querySELEctor('#test');
let test2 = document.querySELEctor('#test2');
file.addEventListener('change',function(E){
test2.innerHTML = e.target.files[0].name;
});
演示在这里 https://jsfiddle.net/jozsefk/4gwzrj38/
以上是大佬教程为你收集整理的将 css 应用于 input[type=file] 时获取文件名全部内容,希望文章能够帮你解决将 css 应用于 input[type=file] 时获取文件名所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。