Как читать каталог, используя jQuery .ajax()?
С помощью jQuery
.ajax()
читать "./ex.html
"возвращает ожидаемое содержимое файла в первом окне предупреждения. Используя тот же вызов, просто изменив запрос на"./
msgstr "не возвращает ожидаемый список каталогов во втором окне предупреждения.
<html>
<head>
</head>
<body>
<script type="text/JavaScript" src="jquery.js"></script>
<script type="text/JavaScript">
alert($.ajax({type: "GET", url: 'ex.html', async: false}).responseText);
alert($.ajax({type: "GET", url: '.', async: false}).responseText);
</script>
</body>
</html>
При непосредственном доступе к файлу: $ firefox ex.html
результаты как описано.$ firefox .
дисплеи:
Индекс файла:///home/cwhii/work/jq/ex
Каталог более высокого уровня
Имя Размер Последнее изменение
ex.html 1 КБ 24.03.2010 22:29:37
jquery.js 161 КБ 17.03.2010 17:16:58
Затем нажмите на ex.html
ссылка создает ожидаемое содержимое файла в первом окне предупреждения и список каталогов во втором окне предупреждения.
Таким образом, вызов firefox с именем файла в командной строке не приводит к выводу списка каталогов, но при переходе к тому же файлу по ссылке на странице каталога во втором окне предупреждения отображается этот список.
Кроме того, я вызывал бета-версию браузера Google Chrome 5.0.307.11 всеми вышеописанными способами, и все результаты не дали списков каталогов в окнах предупреждений, хотя$ google-chrome .
создает страницу со списком каталогов.
4 ответа
Вам понадобится некоторый код на стороне сервера, чтобы сгенерировать список файлов / папок в каталоге. Ваш веб-сервер, скорее всего, перенаправляет этот запрос либо на страницу по умолчанию для каталога (index.html, default.html и т. Д.), Либо на страницу 404/403/ и т. Д., Поскольку запрашиваемая страница не существовать.
Javascript не делает "каталоги" или "файлы", он работает только с URL-адресами. Что бы ни отвечал ваш сервер при запросе /
это все, к чему имеет доступ Javascript.
Если на веб-сервере включен просмотр / просмотр каталогов, это может сработать.
В идеале вы должны создать страницу / скрипт на стороне сервера, чтобы вернуть список каталогов в формате JSON.
Вам нужно написать скрипт листинга каталога PHP и передать каталог, который он будет анализировать, $.ajax ...
голого JQuery не будет достаточно для достижения этой цели.