2

jqueryフォームプラグイン非同期でファイルをアップロードしようとしましたが、これは私のソースコードです:

js コード:

$(document).ready(function(){
    $('form').ajaxForm(); 
});

HTML コード:

<form name="form1" enctype="multipart/form-data" action="upload_do.jsp" method="post">
<input name="testName" type="text">
<input name="myFile" type="file">
<input type="submit" name="Submit" value="submit" />
</form>

しかし、jsp ファイルで testName の値を取得できません。

String testName= request.getParameter("testName");

属性 enctype を削除し、「myFile」という名前のファイル入力を削除すると、次のように通常どおり testName の値を取得できます。

<form name="form1" action="upload_do.jsp" method="post">
<input name="testName" type="text">

<input type="submit" name="Submit" value="submit" />
</form> 

そのような問題を解決する方法は?

4

1 に答える 1

0

enctypeは'multipart/ form-data'であるため、サーバーはリクエストパラメーターを解析しません。inputstreamを解析し、関連するパラメーターをプルするのは開発者の責任です。

通常、apache commons fileuploadライブラリがこの目的で使用されます(http://commons.apache.org/fileupload/

于 2012-09-12T11:42:51.853 に答える