2013-03-16 2 views
0

Я использую форму jQuery для загрузки файлов и сохранения их в базу данных, мой код отлично работает в chrome и mozilla, но загрузка не запускается в Internet Explorer; Я рамка Grails и мои коды следующим образом:jQuery form не работает в Internet explorer

<g:form controller="uploadImage" action="uploadImage" enctype="multipart/form-data" name="imageUploaderForm" id="imageUploaderForm"> 
    <input type="file" name="image" id="image" onchange="submitImageUploaderForm()" /> 
    <g:hiddenField name="imageType" value=""/> 
</g:form> 

$("#imageUploaderForm").ajaxForm({ 
    uploadProgress: function(event, position, total, percentComplete) { 
     $("#progressbar").progressbar({ 
      value : percentComplete 
     }); 
     $(".progress-label").html(percentComplete+" %"); 
    }, 
    complete: function(response){ 
     //something 
    } 
}); 

function submitImageUploaderForm(){ 
    //This method gets called ! 
    $("#imageUploaderForm").submit(); 
} 

И в контроллере я следующее

def uploadImage = { 
    def response = [result:false,message:"Image could not be uploaded.",uploadInstanceId:0] 
    def uploadImage = new UploadImage(params) 
    if(uploadImage.save()) response = [result:true,message: "Image uploaded sucessfully.",uploadInstanceId:uploadImage.id] 
    render response as JSON 
} 

Ничего не происходит на странице, когда я пытаюсь загрузить файл, но через некоторое время получить следующее исключение:

Message: Could not parse multipart servlet request; nested exception is org.apache.commons.fileupload.FileUploadException: Read timed out 
+1

Вы пытаетесь загрузить файл с помощью Ajax? Если это так, это не сработает. Исследование предмета. –

+0

Да, я пытаюсь загрузить файл с помощью AJAX. Этот код отлично работает в mozilla и firefox, но не в Internet Explorer. –

ответ

0

Я использовал скрытый iFrame для загрузки файла в Internet Explorer, в то время как в других браузерах файл загружается с использованием AJAX, используя приведенный выше код.