Как я могу перечислить файлы, содержащиеся в каталоге, используя HTML? Другими словами, я хочу перечислить файлы в каталоге и показать их в браузере.Список файлов в каталоге с помощью html
ответ
Короткий ответ:
No.
Слегка развернутый ответ:
Это не HTML вопрос, но один из конфигурации веб-сервера. Вы можете настроить веб-сервер для отображения содержимого каталога, если только каталог является тем, к которому может обращаться веб-браузер.
Если это не так, вам нужно будет использовать какой-либо серверный язык, чтобы прочитать каталог и перечислить содержимое браузера (хотя вам все равно потребуется обеспечить надлежащие разрешения для этого).
Такая конфигурация сервера также широко считается небезопасной и плохой практикой, последний раз я тоже проверил ... –
@ mori57 - Ничего небезопасного. Если он обнаруживает все, что может быть использовано в эксплойте безопасности, тогда проблема заключается в том, что она раскрывается, а не в том, что она была обнаружена. (c.f. безопасность через безвестность) – Quentin
Я предполагаю, что это будет зависеть от того, где вы подвергались. В любом случае, просто разрешая доступ к каталогам, вряд ли даст OP список, который очень «хорош» с точки зрения удобства использования и форматирования, поскольку список каталогов обычно обрабатывается сервером (Apache, IIS и т. Д.), А не с HTML, правильно? Лучшей практикой было бы использовать динамический язык (PHP, Perl, RoR, ASP.NET и т. Д.), Чтобы читать содержимое каталога и выплевывать правильную разметку, не так ли? –
В зависимости от настроек вашего сервера (вы все же должны иметь возможность разрешить просмотр каталогов для данного каталога, чтобы использовать этот трюк), есть способ получить список, чтобы посмотреть, как вы его хотите, но он требует некоторой дополнительной работы (например, Квентина), чтобы получить какой-то стиль так, как вы этого хотите.
В этом примере я использую jQuery, KnockoutJS и CSS для чтения содержимого каталога (я не делаю никаких специальных трюков на стороне сервера ... это мой режим вывода списка каталогов Apache по умолчанию, возвращающий страница списка каталогов). Я помещаю это в очень базовую страницу HTML5. У меня были некоторые проблемы с моими прежними попытками работать (где я просто создавал элементы «на лету» и добавлял их в список), по какой-то причине они не будут стилизовать. Поскольку я пытаюсь узнать больше об использовании Knockout, так или иначе, это казалось приличным тестом.
С Нокаут: http://murphy.jascot.org/tests/dirlist.html
Однако, как Knockout, вероятно, также избыточна для этого у меня есть образец, который работает с "обычной" старой JQuery, здесь: http://murphy.jascot.org/tests/dirlist-noko.html
Я Извлеченный без Нокаут кода на основе ниже:
HTML
<h1>Testing...</h1>
<button id="btnGet">.get</button>
<div class="shell">
<!-- This is the place we're going to build our list -->
<ul></ul>
</div>
CSS
<style type="text/css">
/* Obviously, none of this is necessary...
this is just to show that it can be done ...
I'm just putting some basic style on my shell
class, and the li's and a's within */
.shell {
width:300px;
}
.shell ul li {
list-style:none;
}
.shell a {
color: #232323;
display: block;
width: 100%;
height:30px;
margin: .5em 0;
background: #CFC;
padding: 5px 10px;
font-weight:bold;
border: 1px solid #999;
border-radius: 3px;
text-decoration:none;
}
</style>
Javascript
<!-- Get us some jQuery goodness! -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
// Setup our method to retrieve the file list
var getFiles = function(){
// Call the /dl/ directory, which should serve
// back the directory-listing default page
// NOTE: This WILL NOT work if you have your server's
// default index/home page in this folder, as that will
// be returned instead of a directory listing!
$.get("/dl/", function(data) {
// get a reference to the ul I want to populate
var $s = $(".shell ul");
// get a list of a tags from the returned data
var links = $(data).find("a");
// for each item in links...
links.each(function(){
// extract the href attr
var href = $(this).attr("href");
// filter out any links you don't want to display...
// in this case, I didn't want to display the
// sort-links and any links starting with a/
if(href.charAt(0) != "?" && href.charAt(0) != "/"){
// append a new li with an anchor tag inside
// it that has the href, and the link's text
$s.append("<li><a href=\"" + href + "\">" +
$(this).text() + "</a></li>");
}
});
});
};
// assign my click handler to #btnGet
$("#btnGet").click(getFiles);
});
</script>
Очевидно, то, что вы разбираете в методе GetFiles будет зависеть от разметки, который использует ваш конкретный сервер при перечислении содержимого каталогов, так что должны быть адаптированы к вашему собственному делу.
Кроме того, большую часть этого можно сделать спорным, если у вас есть доступ к языку или инфраструктуре на стороне сервера, например, Python, Ruby on Rails, PHP или Perl. Но, это был забавный тестовый случай, чтобы поиграть, для меня, так что у вас его есть! :)
Работал для меня, но нужно немного изменить его, чтобы удалить ul на get. –
Не работает с Chrome 43, поскольку он использует javascript для файлов. Нужно было бы разбирать строки типа « '. Вместо этого я '$ ('# hack'). Загружал данные в скрытый div и искал это для тэгов. – Thomas
- 1. Список файлов в каталоге с помощью list.files()
- 2. список файлов в каталоге
- 3. список всех файлов в каталоге
- 4. Java Список файлов в каталоге
- 5. Gettling список файлов в каталоге
- 6. phpmyadmin - список файлов в каталоге
- 7. отфильтрованный список файлов в каталоге
- 8. Как список последних файлов в каталоге с помощью FilenameFilter
- 9. Javascript: Список файлов в каталоге на сервере
- 10. Список файлов в каталоге, используя только javascript
- 11. Список всех файлов в одном каталоге PHP
- 12. список файлов в каталоге импорта sqoop
- 13. Список файлов в каталоге текущего файла JAR
- 14. как список всех файлов в каталоге - развертывание
- 15. Список файлов в каталоге из runnable jar
- 16. Получить список всех файлов изображений в каталоге
- 17. Список файлов в каталоге по сборке phonegap
- 18. Список файлов в каталоге в codeigniter/php
- 19. Поиск файлов в каталоге с помощью Node.js
- 20. поиск файлов в каталоге с помощью php
- 21. Переименование файлов в каталоге с помощью сценария
- 22. Подсчет файлов в каталоге с помощью .Net
- 23. поиска файлов в каталоге с помощью PHP
- 24. Список только числовых имен файлов в каталоге
- 25. Сделать список файлов в каталоге (Batch)?
- 26. Как получить список файлов в каталоге
- 27. bash scripts список файлов в каталоге
- 28. FAT: Список всех файлов в каталоге
- 29. PHP Список файлов в том же каталоге
- 30. Список файлов .csv в одном конкретном каталоге
Если вы имеете в виду динамическое перечисление во время выполнения, вам придется использовать серверный язык, такой как 'PHP'. –
Не динамическое возможно с помощью 'tree -C -H" домена "-T" Title "> index.html – RSFalcon7
Закрытие этого вопроса как «не настоящий вопрос» является абсурдным и продуктивным. Если вы не знаете ответа, просто не отвечайте на него. –