私は最近、Dojo Iframesを使用してこれを行いました。ここではそのためのコードがあります(「(submitFormを返す);」アクション=から、それを呼び出す必要がありformタグから):サーバー側で
submitForm = function() {
dojo.io.iframe.send({
url : "/uploadForm",
form : "html_form_id",
method : "POST",
handleAs : 'text',
load : function(response, ioArgs) {
//handle your response here...
return response;
},
error : function(response, ioArgs) {
if (ioArgs.xhr.status != 0) {
try {
//handle error here
} catch (e5) {
}
}
return response;
}
});
return false;
}
、あなたの春コントローラでは、あなたがこれを処理するだろうとして:
@RequestMapping(method = RequestMethod.POST, value = "/uploadForm")
public ModelAndView onSubmit(
@RequestParam("file") MultipartFile multipartFile,
final HttpServletResponse response)
throws Exception
{
String fileName="";
if(multipartFile!=null)
{
fileName = multipartFile.getOriginalFilename();
}
//file inputstream can be accessed as multipartFile.getInputStream()
String resultCode = "0";
final String responseHTML = "<html><head></head><body><textarea>" + resultCode + "</textarea></body></html>";
response.setContentType("text/html");
final OutputStream responseStream = response.getOutputStream();
responseStream.write(responseHTML.getBytes());
responseStream.write("\r\n".getBytes());
responseStream.close();
}
(処理関数は@RequestParam(「ファイル」)言うように)あなたは、「ファイル」としてあなたのファイルタイプの入力パラメータに名前を付けるために、それは働いたAjax uploadを使用し
感謝をうまく働いた.... malsupのjqueryのフォームプラグインを試してみましたタイプのファイルのフィールドを持つフォームを送信します。だから私はモデルの属性の内部にファイルを収集したい。 – xyz
はい。
@rogermenezes jsp、 –