我有一个隐藏可见性的输入文件:
<input type="file" id="fileupload" name="upload" style="visibility: hidden;" />
但我想使用它而不显示它。我将通过a-tag(超链接)触发事件。 我有:
//that's fine, open file dialog
document.getElementById('fileupload').click();
//can not take the value of file chosen?
var x = document.getElementById('fileupload').value;
console.log(x);
那么如何在不显示输入的情况下获取所选文件?这可能吗?
答案 0 :(得分:1)
您只想在有人添加文件时显示文件名吗?
您可以在文件中添加eventListener以检索文件名:
document.getElementById('fileupload').onchange = function(e) {
console.log(e.target.value);
}
但是要上传文件,您只需将此隐藏文件字段添加到表单并提交即可。
答案 1 :(得分:-1)
在我看来,第一个问题是为什么不使用jQuery,因为它更容易。
其次,输入实际上不会保存文件本身,而是对它的引用。该文件将通过post(或get)和操作服务器端发送。也许我不明白你正在尝试做什么。