0

html/javascript/ajax クライアント側で Java Web サービスを開発しています。ユーザーが入力時にローカルのExcelファイルを提供し、それをサーバー側に送信する方法はありますか?

セキュリティの問題 (C:/fakepath) のためにファイルのパスを取得できず、ajax 要求を介して Excel ファイルの内容を渡すことはできないようです。

私の問題の解決策はありますか?

4

3 に答える 3

0

<form>HTML のと<input>タグを使用してファイルをアップロードする方法を知っていると思います。たとえば、次のようになります。

<form method="post" enctype="multipart/form-data" action="upload_script.php">
<input type="file" name="myfile" />
<input type="submit" value="Upload" />
</form>

これを非同期で行う秘訣は、タグで<iframe>andtarget属性を使用することです。次に例を示します。<form>

<form method="post" enctype="multipart/form-data" action="upload_script.php" target="myiframe">
<input type="file" name="myfile" />
<input type="submit" value="Upload" />
</form>

<iframe name="myiframe"></iframe>

フレームのサイズを 0x0 ピクセルにすることができるため、ユーザーはそこにあることを認識できません。フォームが送信されるとiframe、スクリプト ページが読み込まれます。JavaScript を使用して親フレーム (元のウィンドウ) にコールバックし、アップロードが成功したか失敗したかなどを示すことができます。

于 2012-08-03T21:44:17.120 に答える
0

通常の HTML アップロード メカニズムを使用してファイルをアップロードできます。

HTML は次のようになります。

<html>
...
Select a file to upload: <br />
<form action="UploadServlet" method="post"
                    enctype="multipart/form-data">
<input type="file" name="file" size="200" />
<br />
<input type="submit" value="Upload File" />
</form>
...
</body>
</html>

そして、アップロードを処理するための対応する jsp コード。ここで例を確認できます。

サーバー上に Excel ファイルがあれば、必要に応じて処理できます。

于 2012-08-03T21:38:37.210 に答える
0

実際、私は新しい XMLHttpRequest バージョン 2 でこの問題を回避する方法を見つけました。

詳細については、これを参照してください

于 2012-08-06T13:29:47.940 に答える