【发布时间】:2016-08-08 14:34:47
【问题描述】:
感谢您查看我的问题。我有一个下面的表格,它有一个文件输入字段。可以肯定地说我已经隐藏了这个输入字段,现在我使用标签作为主要的“按钮”来选择文件。一旦用户单击“上传图片...”标签,我希望标签内的文本从“上传图片...”更改为文件名。我正在关注下面的本教程,但是编写的 javascript(在本教程中)适用于用户可以选择的多个文件。我只允许我的用户选择一个文件。这是一个更改您的个人资料图片页面,以便了解此表单的作用。
代码如下:
<!-- Change Picture Form -->
<div class="changepic-wrap">
<form action="changepicauth.php" method="post">
<input type="file" name="profilepic" id="profilepic" class="inputfile">
<br>
<label for="profilepic">
<img src="/images/profile/upload.png" />
Upload Picture...
</label>
<br>
<div class="button-wrap">
<button>Change Picture</button>
</div>
</form>
</div>
教程如下:
http://tympanus.net/codrops/2015/09/15/styling-customizing-file-inputs-smart-way/
有人可以帮我解释一下我必须做什么吗?我在想一些类似于事件监听器的东西,但我不确定 javascript。我是一名后端开发人员,对 javascript 知之甚少。我不想使用 JQUERY。仅限纯 JavaScript。
再次感谢 StackOverflow 成员的帮助! :D
编辑: 有人说文本已经在改变。这不是...我希望 LABEL 文本改变。 “文件输入”标签有两个部分。按钮,以及按钮旁边的文本。我使用以下 SASS 代码隐藏了输入标签。这样只显示“上传图片...”标签文本。请确保将此 SASS 代码添加到您的文件中,以便您可以看到 LABEL 文本没有更改。
.inputfile
width: 0.1px
height: 0.1px
opacity: 0
overflow: hidden
position: absolute
z-index: -1
【问题讨论】:
-
为我工作。也许你有重复的 id profilepic?
-
检查上面的编辑。
标签: javascript html