Задать вопрос
Hando
@Hando
Верстак

Как передать данные из инпута в инпут?

Как передать имя файла из input type="file" в input type="text" при изменении файла? Такая задача возникла, так как мне необходимо сделать форму с нестандартным инпутом для загрузки файла. Так как он стилизован, то мы его скрываем и вместо него выводим label иinput type="text". Во время выбора другого файла - название выводимое в input type="file" должно передаваться в input type="text" и соответственно меняться. Пытался присвоить значение одного val() к другому, но не получилось.
  • Вопрос задан
  • 2950 просмотров
Подписаться 2 Оценить 2 комментария
Решения вопроса 1
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Пример

HTML
<form action="">
	<button type="button">Выбрать</button>
	<input name="f" type="file" multiple></input>
	<input name="t" type="text"></input>
</form>

CSS
[type="file"] {
	display: none;
}

JS
$(document)
	.on('click', '[type="button"]', function (e) {
		this.form.f.click();
	}).on('change', '[type="file"]', function (e) {
		if (this.files) {
			for (var i = 0, value = []; i < this.files.length; i++) {
				value.push(this.files[i].name);
			}

			value.join();
		} else {
			var value = this.value.replace(/^.+[\\\/]/, '');
		}

		this.form.t.value = value;
	});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
aliencash
@aliencash
Партизан
А что конкретно не работает?

<form action="">
  <input name="f" id="f" type="file" onchange="ept();"></input>
  <input name="t" id="t" type="text"></input>
</form>

function ept() {
  document.getElementById('t').value = document.getElementById('f').value;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы