Как создать список выбора каталога на странице html.
Если я использую элемент входного файла, я могу выбрать только файл, но вместо этого мне нужно выбрать каталог.
Мне нужно сделать это, потому что пользователь должен выбрать правильный путь внутри своего компьютера.
Любые решения?Directory Chooser в HTML-странице
ответ
Невозможно выполнить чистый HTML/JavaScript по соображениям безопасности.
Выбор файла для загрузки - это лучшее, что вы можете сделать, и даже тогда вы не получите его полный исходный путь в современных браузерах.
Возможно, вы сможете скомпоновать что-то вместе с использованием Java или Flash (например, используя SWFUpload), но это большая работа и дополнительные проблемы совместимости.
Еще одна мысль - открыть iframe
, показывая привод пользователя C:
(или что-то еще), но даже если это возможно в наши дни (может быть заблокировано по соображениям безопасности, не пробовал в течение длительного времени), это будет невозможно для вашей сети сайт для связи с iframe (опять же по соображениям безопасности).
Для чего это необходимо?
Мне нужен он для выбора пути внутри компьютера, а не для загрузки. Я использую этот путь для сохранения файла, но с функцией JSP. – enfix
@enfix Как вы собираетесь сохранять файл с JSP-сервера в определенный путь на локальном компьютере пользователя? Я не понимаю. Можете ли вы изменить свой вопрос, чтобы уточнить? –
Мне нужно получить путь, по которому пользователь хочет сохранять файлы, но файлы сохраняются с помощью java-функции callend внутри страницы JSP. Эта функция нуждается в пути для сохранения файлов. Это все. Я сохраняю несколько файлов, мне нужно создавать папки и другие вещи с помощью этой java-функции. – enfix
Сценарии неизбежны.
Это не предусмотрено из-за угрозы безопасности. <input type='file' />
ближе всего, но не то, что вы ищете.
Оформить заказ this example, в котором используется Javascript для достижения желаемого.
Если ОС является окном, вы можете использовать VB scripts для доступа к основным файлам управления для поиска папки.
Попробуйте это, я думаю, что это будет работать для вас:
<input type="file" webkitdirectory directory multiple/>
Вы можете найти демо это в https://plus.google.com/+AddyOsmani/posts/Dk5UhZ6zfF3, и если вам нужна дополнительная информация вы можете найти его here.
У меня создалось впечатление, что ваше предложение работает для загрузки папки, не получая ее пути. –
Это работает в firefox, но не в хроме. –
https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory для документации. Он называется «нестандартным». И он эффективно загружает файлы, содержащиеся рекурсивно (?), Также выставляя имя папки. Это будет сделано в большинстве случаев. – Blauhirn
Если вы являетесь сервером и пользователем (например, вы создаете приложение, которое работает через браузер, и вам нужно выбрать папку), попробуйте позвонить JFileChooser
с сервера, когда в браузере будет нажата какая-либо кнопка.
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("select folder");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
Этот код отрезала от here
Я сделал работу вокруг. У меня было скрытое текстовое поле для хранения значения. Затем, на form_onsubmit, Я скопировал значение пути, за меньшее имя файла в скрытую папку. Затем установите для поля fileInput значение "". Таким образом, файл не загружается. Я не помню события управления файловой системой. Может быть, обмен. Прошло много времени. Если есть значение, я разбираю имя файла и помещаю папку обратно в поле. Конечно, вы должны подтвердить, что файл является допустимым файлом. Это даст вам папку рабочих станций клиентов.
Однако, если вы хотите отображать пути к серверу, для этого требуется совершенно другой подход к кодированию.
Пользователю нужно будет обучиться выбору любого файла. Это меланхолично. Но, работает в крайнем случае. Add and onchange = "parseFilePath()" в элемент управления FileUpload. function parseFileUploadPath() { var upl = document.getElementById ("<% = this.FileUpload1.ClientID%>"); if (upl.value! = "") { var pos = upl.value.lastIndexOf ("\\") document.getElementById ("<% = this.TextBox1.ClientID%>"). Value = upl. value.substr (0, pos) } } – user8004777
К сожалению, Более полный HTML. – user8004777
- 1. jQuery Directory chooser Plugin
- 2. Directory Chooser без форм FolderBrowserDialog
- 3. Загрузить файл на SD-карту без использования Browser Directory Chooser
- 4. Javafx using directory chooser crashes app under linux
- 5. File chooser в Xamarin.iOS
- 6. Directory to string, Java
- 7. Ищете изображение Chooser в JQuery?
- 8. Заселение NetLogo Chooser в Runtime
- 9. Image Chooser в Firefox OS
- 10. Запустить активность в 'wallpaper chooser'
- 11. Dropbox iOS Chooser в симуляторе
- 12. Device Chooser Offine
- 13. Файл Broweer/Chooser vaadin
- 14. Android. Custom Intent chooser
- 15. Javascript vibrant color chooser
- 16. Chooser and launcher WP7
- 17. Dynamic Activity Chooser
- 18. Переопределение поведения намерений Chooser
- 19. Kivy Photo Chooser
- 20. File Destination Chooser
- 21. React Native File chooser
- 22. Open Folder - Intent chooser
- 23. Eclipse device chooser
- 24. JQGrid Формат столбца Chooser
- 25. JQGrid Колонка Chooser
- 26. Android Intent Chooser
- 27. сделать JFile Chooser Query
- 28. Wallpaper chooser tutorial?
- 29. Обратный звонок от chooser
- 30. Dropbox Chooser API
Теперь это возможно с HTML5, по крайней мере, в хром: http: // stackoverflow.com/questions/24718769/html5-javascript-how-to-get-the-selected-folder-name – mtyson