Как читать каталог, используя 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 не будет достаточно для достижения этой цели.

Другие вопросы по тегам