Выбор каталога на странице HTML
Как создать каталог на странице html.
Если я использую элемент входного файла, я могу выбрать только файл, но мне нужно выбрать каталог.
Мне нужно сделать это, потому что пользователь должен выбрать правильный путь внутри своего компьютера.
Любые решения?
Ответы
Ответ 1
Невозможно выполнить чистый HTML/JavaScript по соображениям безопасности.
Выбор файла для загрузки - это лучшее, что вы можете сделать, и даже тогда вы не получите его полный исходный путь в современных браузерах.
Вы можете скомпоновать что-то вместе, используя Java или Flash (например, используя SWFUpload в качестве основы), но это много работать и приносит дополнительные проблемы с совместимостью.
Другая мысль заключалась бы в открытии iframe
, показывающего диск пользователя C:
(или что-то еще), но даже если это возможно в наши дни (может быть заблокировано по соображениям безопасности, не пробовал в течение длительного времени), это будет невозможно для вашего веб-сайта для связи с iframe (опять же по соображениям безопасности).
Для чего вам это нужно?
Ответ 2
Попробуйте, я думаю, это сработает для вас:
<input type="file" webkitdirectory directory multiple/>
Вы можете найти демонстрацию этого в https://plus.google.com/+AddyOsmani/posts/Dk5UhZ6zfF3,
и если вам нужна дополнительная информация, вы можете найти его
здесь.
Ответ 3
Сценарии неизбежны.
Это не предусмотрено из-за угрозы безопасности. <input type='file' />
ближе всего, но не то, что вы ищете.
Оформить заказ этот пример, который использует Javascript для достижения того, что вы хотите.
Если ОС - это окна, вы можете использовать VB scripts для доступа к основным файлам управления для поиска папки.
Ответ 4
Если вы являетесь сервером и пользователем (например, вы создаете приложение, которое работает через браузер, и вам нужно выбрать папку), попробуйте вызвать JFileChooser
с сервера, когда в браузере будет нажата какая-либо кнопка
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("select folder");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
Этот код отключен от здесь
Ответ 5
Я сделал работу. У меня было скрытое текстовое поле для хранения значения. Затем, по форме,
Я скопировал значение пути, за меньшее имя файла в скрытую папку. Затем установите для поля fileInput значение "". Таким образом, файл не загружается.
Я не помню события элемента управления fileUpload. Может быть, обмен. Это было время. Если есть значение, я разобрал имя файла и вернул папку в поле. Конечно, вы должны подтвердить, что файл является допустимым файлом.
Это даст вам папку рабочих станций клиентов.
Однако, если вы хотите отображать пути к серверу, для этого требуется совершенно другой подход к кодированию.