2016-10-30 8 views
2

ex/functionディレクトリのような特定のディレクトリにあるすべてのファイルを表示するポップアップウィンドウを作成します。そのディレクトリ内のファイルをクリックし、[OK]をクリックして、情報を変数に保存します(アップロードしないでください)。どうすればいいですか?ローカルディレクトリのファイルを選択するためのポップアップウィンドウの作成方法は?

私のようにフォームを使用して試してみた:

<form action="" method="post" enctype="multipart/form-data"> 

しかし、それを私がspecificlly開くためのディレクトリを指定することはできません、私は手動でそのディレクトリに移動しなければなりません。

私は(window.openを使用してみました

window.open("file:///" + "home/user/Desktop/demo/functions"); 

私はonclickのリンク機構を使用して試してみた:これらの

<a onclick="file:///+ "home/user/Desktop/demo/functions"">Open folder</a> 

どれも、私はアプローチ可能性のある方法を動作するようには思えませんこの問題?

+0

私はセキュリティのためにできると確信しています。私は本当にいくつかのウェブサイトが私のコンピュータの特定のフォルダに移動することを望んでいない。 –

+0

私は割り当てのためにこれを行う必要があるので、私は文字通りこの時点では絶望的です。 – 233rr

+0

私はどういうわけかwindow.openを実行して、そこのディレクトリにあるすべてのファイルを印刷して、何らかの形でそれらのファイルをクリックして「OK」をクリックすることができますか? – 233rr

答えて

1

JavaScriptでは、ファイルの処理がちょっと面倒です。 JavaScriptからフォルダの内容を取得する唯一の方法は、サーバーに接続して、別の言語のサーバーサイドコードでフォルダ情報をJavaScriptに戻すことです。

この結果は、ターゲットディレクトリの内部にindex.htmlファイルを配置することによって実現できると私は考えている唯一の方法です。このindex.htmlファイルには、そのフォルダ内のすべてのファイルの名前が入ります。ただし、手動でHTMLファイルにプラグインする必要があります。 (PHPの使い方を知っていれば、ディレクトリをスキャンして内容をHTMLファイルにプッシュできます)

Webブラウザがフォルダに移動する必要がある場合、サーバにindexファイルを要求しますHTMLまたはPHPファイルでなければなりません)。このインデックスは、その中のフォルダの内容を持ちます。

フォルダがローカルコンピュータに実際にある場合は、しかし、我々はこれを行うことができます1つの最後の方法がある...

ページがfile:///C://Users/USERNAME/Desktop/My%20Folder/に似て何かのwindow.locationを使用してフォルダに移動した場合、クロム(またはあなたが使用しているブラウザであれば)、ディレクトリに移動してそのディレクトリの内容を表示します。ただし、このブラウザで生成されたインデックスページにJavaScriptを挿入することはできないため、これを操作することはできません。

0

<input type="file">はおそらくあなたの最善の策ですが、少なくともJavaScriptブードーがなくても、ウェブとローカルユーザーの間にセキュリティ問題があってもデフォルトディレクトリを設定することはできません。

なぜなら、どのようにしたいのか分からないのは、ディレクトリ構造が異なるユーザー間で異なるため、パスの指定がOSによって異なります。

0

アップロードボタンをクリックした後で、この画像をプロジェクト/画像フォルダにコピーすることをおすすめします。