使用ajax请求和servlet上传文件

时间:2012-11-07 12:46:07

标签: html5 jquery file-upload

我使用以下html代码调用servlet并正确上传文件

   <html>
   <body>
   <h3>File Upload:</h3>
    Select a file to upload:
   <form action="Upload" method="post" enctype="multipart/form-data" id="mainForm"> 
   <div id="upload">

   <input type="file" name="file" id="file" size="50" multiple/>
   </div>

   <input type="submit" id="action" value="Upload File" />
  </form>
  </html>

但是,当我序列化表单详细信息并以ajax格式发送此请求时,请求内容在servlet中不可用...

   $.ajax({
             type: "POST",
             url: "UploadServlet",
             contentType: "multipart/form-data; charset=UTF-8; boundary=---------------------------" + boundary,
             data: $("#mainForm").serialize(), // serializes the form's elements.
             success: function(data)
             {
                 alert("ajax response data"+data); // show response from the php script.
             }

         });

在我的servlet中需要处理请求,并且只有文件必须上传才能获得......

但是使用ajax请求不会向servlet返回任何表单元素 任何人都可以建议如何使用ajax请求。

提示:       我尝试在ajax请求中使用以下参数,但它不起作用

       cache:false,
       contenttype:false,
       processData:false

1 个答案:

答案 0 :(得分:0)

AJAX请求不可能使用Iframe它可能有用。