Tôi có một iframe trên trang của mình, và bên trong iframe mà tôi thực thi mã:
$.ajax({
url: '/SamplePage/ExportToExcel',
async: false,
data: par,
type: 'POST'
});
đáp ứng được trả về tốt, tuy nhiên tôi không nhận được hộp thoại 'Lưu tệp đính kèm, không có gì xảy ra ... Để làm cho mọi thứ rõ ràng, tiêu đề là tốt (nội dung bố trí, mime loại vv,), như khi tôi thực hiện xuất khẩu bằng cách sử dụng trình đơn đồng bằng nó hoạt động. Có vẻ như nó có liên quan đến cuộc gọi ajax. Nó có hoạt động không?
Cảm ơn
nemesisfixx - cảm ơn vì phản hồi tuyệt vời này. Câu hỏi nhanh ... Có cách nào để trang gốc biết khi nào tệp đính kèm đã được tải xuống không? Ví dụ: Tôi muốn ngăn người dùng nhấp vào nút tải xuống nhiều lần, vì vậy tôi vô hiệu hóa nó ngay sau khi cô nhấp vào nút đó. Tuy nhiên, khi tải xuống hoàn tất, tôi muốn bật lại (Vì vậy, cô ấy có thể yêu cầu tải xuống khác với cài đặt/đầu vào mới). Điều này có thể được thực hiện? – mattstuehler
@mattstuehler, không chắc chắn về cách tiếp cận thẳng thắn, nhưng u có thể kích hoạt cuộc gọi phía máy chủ đến kết thúc (nghĩ rằng giao thức Comet) cho phép ứng dụng của bạn biết khi tải xuống hoàn tất ở phía máy chủ . Một cách tiếp cận "dễ dàng hơn" có thể là chờ một cửa sổ thời gian cụ thể, sau khi hết hạn, bạn chỉ cần giả định rằng quá trình tải xuống phải hoàn tất và u có thể hiển thị nút (một số thông tin trước về kích thước tệp trung bình của yo có thể giúp ích) . – nemesisfixx