2011-12-29 11 views
6

Tôi có cùng một vấn đề as is explained here, viết tắt:Dữ liệu JSON của IE9 cho khung nội tuyến: "Bạn có muốn mở hoặc lưu tệp này không?"

Tôi đang sử dụng iframe để đăng tệp lên máy chủ theo kiểu AJAX, sau đó nhận phản hồi JSON để cho tôi biết tệp đã được tải lên và phân tích cú pháp thành công hay chưa. Công trình này tuyệt vời là mọi trình duyệt ngoại trừ IE9. Thay vào đó, IE9 nhắc tôi lưu hoặc mở JSON và sẽ không chuyển nó trở lại iframe.

Trong câu hỏi SO khác cho điều này, EricLaw -MSFT đề xuất đặt loại nội dung thành "application/json", mà tôi đã làm, nhưng không có kết quả.

Có ai biết cách tải IE9 để khung nội tuyến có JSON của nó không?

+2

Cũng có vẻ như thiết lập kiểu nội dung để "text/html" làm các trick. Nó ít hơn lý tưởng vì nó không mô tả nội dung, nhưng tốt thôi. Hy vọng điều này sẽ giúp người khác quá. – lafncow

+0

Tôi tự hỏi liệu nó có thể buộc IE đưa điều này vào khung nội tuyến bằng cách đặt rõ ràng bố cục thành nội tuyến hay không. Sẽ cố gắng này. – clacke

+0

Bạn đã thử thực hiện GET thay vì POST? – redolent

Trả lời

4

Có vẻ như việc đặt loại nội dung thành "text/html" sẽ thực hiện thủ thuật. Nó ít hơn lý tưởng vì nó không mô tả nội dung, nhưng tốt thôi. Hy vọng điều này sẽ giúp người khác quá.

HTML Forms được giới hạn dữ liệu gửi trong ba loại khác nhau nội dung: text/plain, application/x-www-form-urlencoded, và multipart/form-data

Để workaround vấn đề này, mã máy chủ hiện xử lý HTML Forms phải được viết lại để tự phân tích cơ thể yêu cầu vào tên cặp giá trị khi nhận được yêu cầu từ các đối tượng XDomainRequest. Điều này làm cho việc thêm hỗ trợ cho đối tượng XDomainRequest khó khăn hơn so với nếu không.

Tài liệu tham khảo

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