Ajax 影像上傳增強
在將表單轉換為 Ajax 進行影像上傳的過程中,您遇到了一些障礙。讓我們深入研究問題並提供解決方案。
問題 1:提交事件未觸發操作
您的 Ajax 程式碼缺少必要的元件,例如成功和錯誤處理程序。包含這些處理程序將使您能夠捕獲和分析來自伺服器的任何錯誤或回應。
問題2:提交時觸發函數,而不是檔案選擇
觸發選擇檔案後的影像上傳功能,您可以利用檔案輸入上的「變更」事件。透過擷取變更事件,您可以讓函數在選擇檔案後立即執行,而不是等待表單提交。
增強的Ajax 程式碼:
這是一個改進的包含必要修改的Ajax 程式碼:
$(document).ready(function (e) { $('#imageUploadForm').on('submit', (function (e) { e.preventDefault(); var formData = new FormData(this); $.ajax({ type: 'POST', url: $(this).attr('action'), data: formData, cache: false, contentType: false, processData: false, success: function (data) { console.log("success"); console.log(data); }, error: function (data) { console.log("error"); console.log(data); } }); })); $("#ImageBrowse").on("change", function () { $("#imageUploadForm").submit(); }); });
其他注意:
確保您的PHP程式碼包含正確的錯誤處理以捕獲任何伺服器端問題。
以上是如何增強 Ajax 圖像上傳以處理錯誤並觸發檔案選擇?的詳細內容。更多資訊請關注PHP中文網其他相關文章!