CSS:如何隐藏文件输入但保留文件名?

kq4fsx7k  于 12个月前  发布在  其他
关注(0)|答案(5)|浏览(113)

我想隐藏文件输入“选择文件”按钮,但我想保留文件名。我该怎么做?


的数据

<input
  name="upload"
  id="upload-input"
  placeholder="Select a file"
  ref="fileInput"
  type="file"
  required>

字符串

5w9g7ksd

5w9g7ksd1#

您可以保存文件名到另一个html元素,然后像这样隐藏选择文件输入。

function getFileName()
{
var x = document.getElementById('upload-input')
x.style.visibility = 'collapse'
document.getElementById('fileName').innerHTML = x.value.split('\\').pop()
}

个字符

7z5jn7bk

7z5jn7bk2#

使用以下CSS:

::-webkit-file-upload-button,
::file-selector-button {
  display: none;
}

字符串

::-webkit-file-upload-button,
::file-selector-button {
  display: none;
}
<input type="file">

的数据

jjjwad0x

jjjwad0x3#

在以下位置添加新构件:

<span id='upload-file-name'></span>

字符串
使用JavaScript,首先获取文件名

var em = document.getElementById("upload-input");
var fname = em.name;


隐藏文件上传输入字段

em.style.display = 'none';


将文件名放入此新组件

document.getElementById("upload-file-name").innerHTML = fname;

sqserrrh

sqserrrh4#

你可以在css中使用透明的颜色属性来隐藏文件名的字母,但是按钮不知道

.inputfile{
  opacity: 0;
}

个字符
如果你想隐藏它,你必须把:显示:无;但一切都将被隐藏,而无法使用它。但如果你想它是不可见的调节不透明度和调整输入,它可以为你工作。但如果你想隐藏按钮和字母,你不能把颜色:“任何颜色”

ldioqlga

ldioqlga5#

你可以创建一个div,在选择文件名后显示它。然后,隐藏你的输入文件,不显示任何文件。
所以使用jquery或JavaScript onchange或onclick事件来完成它

相关问题