2012-01-03 22 views
5

Tôi đang cố gắng sử dụng FormData(). Tôi đã thử mã này trong nhiều phiên bản của Chrome và Firefox.FormData() XHR2

var fData = new FormData(); 
fData.append('foo', 'bar'); 
console.log('formData', fData); 

fData, khi được ghi nhật ký, chỉ cung cấp cho tôi đối tượng được tạo với nguyên mẫu FormData và không có giá trị "foo" bổ sung. Không có lỗi, nó dường như không âm thầm.

Tôi cũng đã cố gắng

var fData = new FormData(formElement); 
+0

Bạn đã tìm thấy giải pháp cho điều này chưa? Tôi đang gặp vấn đề tương tự. – aganders3

+0

@ aganders3 Chưa. Tôi sẽ đăng nó ở đây nếu tôi làm. –

Trả lời

7

Làm một chút về nghiên cứu, tôi thấy this question mà nói rằng bạn không thể nhận được dữ liệu của bạn trực tiếp từ đối tượng FormData. Tuy nhiên, bạn có thể xem dữ liệu nào được gửi nếu bạn kiểm tra đối tượng XMLHttpRequest sau khi gửi. Điều này cho phép tôi xem những gì tôi đang gửi (tôi đã sử dụng tab mạng của thanh tra của Chrome) và gỡ lỗi hiệu quả mã của tôi.

Vì vậy, để trả lời câu hỏi của bạn: có thể đã hoạt động, bạn chỉ không thể xem dữ liệu của mình trong đối tượng FormData.

+0

Tuyệt vời, cảm ơn. Nó đã kết thúc mà tôi đã không nhận được multipart/form-data trên máy chủ. Vì tôi đang sử dụng node.js nên tôi phải sử dụng Formidable để nhận yêu cầu. –

+0

Làm thế nào để bạn thấy dữ liệu yêu cầu trong đối tượng XMLHttpRequest? Có vẻ như không có tài sản vì lý do bảo mật. –

Các vấn đề liên quan