FormData是HTML5新增的API,用于獲取表單數據并以"key=value"
的形式發送給服務器。而在jQuery中,通過$.ajax()
方法來發送請求,并可使用FormData來傳遞數據。
$.ajax({ url: "example.php", type: "POST", data: new FormData($('#myForm')[0]), processData: false, // 告訴jQuery不要處理數據 contentType: false, // 告訴jQuery不要設置contentType success: function(response){ console.log(response); }, error: function(xhr, status, error){ console.error(error); } });
在上述代碼中,我們創建了一個FormData
實例,并將表單數據傳遞給它。然后將這個FormData
實例作為data
值傳遞給$.ajax()
方法,同時將processData
和contentType
設置為false
,告訴jQuery不要處理數據和設置contentType。
另外需要注意的是,在FormData中,文件上傳需要使用<input type="file">
,而其他表單元素直接以"key=value"
的形式添加到FormData中。
<form id="myForm"> <input type="text" name="username" value="John Doe"> <input type="file" name="photo"> </form>