Спасибо, что посмотрели мой вопрос. У меня есть форма ниже, у которой есть поле ввода файла. Безопасно сказать, что я скрыл это поле ввода, и теперь я использую метку в качестве основной «кнопки» для выбора файлов. Когда пользователь нажимает на ярлык «Загрузить изображение ...», я хочу, чтобы текст внутри метки менялся с «Загрузить изображение ...» на имя файла. Я следую этому руководству ниже, однако написанный javascript (в учебнике) предназначен для того, чтобы несколько файлов могли быть выбраны пользователем. Я только разрешаю своим пользователям выбирать ОДИН файл. Это изменение страницы вашего профиля, чтобы дать представление о том, что делает эта форма.Как изменить текст ярлыка HTML Как только файл был выбран с помощью 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/
Может кто-нибудь объяснить мне, что я должен делать? Я что-то думаю по строкам eventlistener, но я не уверен в javascript. Я сторонний разработчик и очень мало знаю о javascript. Я НЕ ХОЧУ ИСПОЛЬЗОВАТЬ JQUERY. Прямой javascript только.
Еще раз спасибо за помощь Члены StackOverflow! : D
Редактировать: Некоторые люди говорят, что текст уже меняется. Это не ... Я хочу изменить текст LABEL. Тег «File Input» имеет две части. Кнопка и текст рядом с кнопкой. Я скрыл входной тег, используя следующий код SASS. Таким образом отображается только текст надписи «Загрузить изображение ...». Обязательно добавьте этот код SASS в свой файл, чтобы вы могли видеть, что текст LABEL не изменяется.
.inputfile
width: 0.1px
height: 0.1px
opacity: 0
overflow: hidden
position: absolute
z-index: -1
Работа для меня. Возможно, у вас есть дубликат id profilepic? – instead
Отметьте выше для редактирования. –