Как ввести имя каталога в форму?

  • Автор темы erdn
  • Дата начала
Статус
Закрыто для дальнейших ответов.
E

erdn

#1
Как известно,
(http://www.w3.org/TR/html4/interact/forms.html#h-17.4)
тип "директория" в тег INPUT ввести нельзя.

Тем-не-менее, иногда очень нужно.
То есть, как при вводе File чтобы открывалось дерево каталогов и можно было-бы выбрать каталог.
И передавать через форму текстовое поле с содержимым -- полный путь к директории.

Всё, что приходит на ум -- это перехват onSubmit при вводе файла,
смена типа на text с исходного file
и отрезание лишнего файла в конце.

У этого пути есть один существенный недостаток -- нужно ,чтобы в каталоге лежал хотя-бы один файл.


Уважаемые кодеры-программеры-дизайнеры, есть ли способ более простой и без этого недостатка???
 

ioni

Well-known member
11.05.2006
340
0
#2
Где-то что-то подобное в HTA я видел, но давно...
В примере показывалось, как с помощью HTML Application сделать броузер.

Но давно было - уж и не помню где нашел.
Искать снова?
 
E

erdn

#3
Где-то что-то подобное в HTA я видел, но давно...
В примере показывалось, как с помощью HTML Application сделать броузер.

Но давно было - уж и не помню где нашел.
Искать снова?
Если вас это не очень затруднит. Полдня убил на поиски, ничего путного. Как-будто, проблемы не существует...
 
E

erdn

#4
Попробовал отработать изложенный вначале алогритм:

<form name="mform" action="script.php" method="post" enctype="multipart/form-data">
<input type="file" size=80 name="scan" value = "same default value">
<input type="submit" name="submit" value="Отправить" onSubmit="document.mform.scan.type='text';">

Почему-то ни ошибки ни выдаёт, ни форма нужный результат не отправляет...
 

ioni

Well-known member
11.05.2006
340
0
#5
Честно говоря - затруднит :)
Но я бы попробовал следующее:
Код:
<form name="mform" action="" method="post" enctype="multipart/form-data">
<input type="file" size=80 id="ToDoValue" value = "Enter directory">
<input type="hidden" size=80 id="scan" value = "">
<input type="button" name="submit" value="Отправить" onClick="document.mform.scan.value=document.mform.toDoValue.value;">
В результате при нажатии на кнопку (onClick, а не onSubmit в моем случае) я работаю уже с текстовой переменной - которую можно тягать, обрабатыввать, пришивать к ней что угодно или отрезать - как в нашем случае :)
 
E

erdn

#6
Честно говоря - затруднит :)
Но я бы попробовал следующее:
Код:
<form name="mform" action="" method="post" enctype="multipart/form-data">
<input type="file" size=80 id="ToDoValue" value = "Enter directory">
<input type="hidden" size=80 id="scan" value = "">
<input type="button" name="submit" value="Отправить" onClick="document.mform.scan.value=document.mform.toDoValue.value;">
В результате при нажатии на кнопку (onClick, а не onSubmit в моем случае) я работаю уже с текстовой переменной - которую можно тягать, обрабатыввать, пришивать к ней что угодно или отрезать - как в нашем случае :)
Замечательно!
Так работает.
Большое спасибо. Осталось только имя файла обкромсать, но это уже дело техники...
 

ioni

Well-known member
11.05.2006
340
0
#7
В той же функции, которая будет по onсLick можно проверить саму передаваемую строку (есть она или нету), обкромсать ее, передать обратно в форму, а форму - сабмитить :)
 
Статус
Закрыто для дальнейших ответов.