2016-03-28 23 views
1

我使用jquery .serialize()方法提交我的引導表單,沒有文件上傳控制,一切正常。添加引導文件上傳控件後,我實現了 。 serialize()不發送attachments.Is有任何解決方案,而不做補充文件上傳控制,在Lotus Notes web應用程序上自舉文件上載

  • ?Readform方法
  • 不用從頭

回答

0

我重新寫提交模塊能夠達到類似的東西,

var formData = new FormData($form[0]); 

$.ajax({ 
     type: "POST", 
     contentType: false, 
     processData: false, 
     enctype:$form.attr("enctype", "multipart/form-data"), 
     url: $(e.target).attr('action'), 
     data: formData, 
     success: function(data) { } 
}).then(function() { 
     //Further conditions     
}) 

希望這可以幫助別人!

+0

我正在使用幾乎完全一樣的代碼,它完美的作品。 唯一的區別是,POST URL返回JSON表示成功或失敗,然後根據以下原則將用戶重定向到不同的頁面: –

+0

@ Karl-HenryMartinsson,只是好奇你是否遇到過上述代碼的任何瀏覽器兼容性?到目前爲止,我已經測試了Firefox和IE-11的正常工作。 – Rishi

+0

不,因爲它是jQuery,它不應該是任何瀏覽器問題,只要你使用的瀏覽器支持的jQuery版本正在使用。如果您的用戶使用舊瀏覽器,請使用jQuery 1.x。 –

0

我使用幾乎一模一樣的代碼仙人貼,增加檢查JSON通過HTTP POST返回,並基於響應(成功或失敗)重定向用戶的瀏覽器:

var formData = new FormData($('form')[0]); 
$.ajax({ 
    url: 'api/upload', 
    type: 'POST', 
    data: formData, 
    cache: false, 
    contentType: false, 
    processData: false, 
    success: function (data) { 
     if (data.status == true) { 
      window.location.replace("ThankYou.html"); 
     } else { 
      var errorMsg = data.message; 
      window.location.replace("Failure.html?errormsg=" + errorMsg); 
     } 
    } 
});