- ベストアンサー
jQueryを使用してサーバー上のファイル一覧を取得する方法
- jQueryを使ってクライアント側でサーバー上の特定のディレクトリ内の画像ファイルの一覧を取得する方法について説明します。
- ファイル数が限られており、ファイル名には規則性があるため、ループを使用して一つずつファイルを取得し、HTMLに出力する方法が考えられます。
- 具体的には、ループ内でファイル名を生成し、そのファイル名を使用してファイルを読み込みます。成功した場合は、ファイル名をHTMLに出力します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>ひとつひとつ見に行って、あればそのファイル名をHTMLに出力する およそ効率的な方法とは思えませんが、方法としては可能でしょう。 一例として。 (全角空白は半角に) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head><title>sample</title> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <style type="text/css"> .imageBox, .imageBox li{ list-style-type:none; matgin:0; padding:0; } .imageBox li{ float:left; margin:5px; } .imageBox img{ height:150px; width:150px; } .imageBox p{ margin:0; } </style> </head> <body> <script type="text/javascript"> (function(){ var ul = document.createElement("ul"); var li = document.createElement("li"); var caption = document.createElement("p"); var i, name, img, e, cap; ul.className = "imageBox"; li.style.display = "none"; for(i=0; i<30; i++){ e = li.cloneNode(true); cap = caption.cloneNode(true); img = new Image(); e.appendChild(img); e.appendChild(cap); ul.appendChild(e); name = "IMG_" + i + ".jpg"; cap.appendChild(document.createTextNode(name)); img.alt = ""; img.onload = (function(elm){ return function(){ elm.style.display = ""; } })(e); img.src = name; } document.body.appendChild(ul); })(); </script> </body> </html>
お礼
回答をありがとうございます。 お礼が遅くなりすみません。 大変急ぎだったもので、今回はまったく別の手段で対応したのですが、 本番までは次官の余裕があるので、 提示いただいたソースを参考にして作り直してみようと思います。 (できればサーバー側で処理させてもらえるように話を持って行きたいのですが...。) どうもありがとうございました。