Tôi đang sử dụng plugin tuyệt vời của John CulvinTải xuống để tạo thông báo "vui lòng đợi" khi người dùng của tôi chọn tạo báo cáo.Tải xuống tệp JQuery với Ajax
Khi người dùng nhấp vào liên kết, tôi gửi yêu cầu ajax tới PHP của tôi tạo tệp PDF trên máy chủ. Tại thời điểm đó tôi đang cố gắng cập nhật liên kết trong trình xử lý thành công của tôi cho plugin tệpDownload.
Tôi có thể tiếp cận điều này sai, nhưng đây là mã của tôi - mọi trợ giúp đều được đánh giá cao.
$("body").on("click","##pdfLink", function(e){
$.fileDownload($(this).attr('href'), {
preparingMessageHtml: "Preparing your report, please wait...",
failMessageHtml: "There was a problem generating your report, please try again."
});
// Build our data string.
var strData = {method: "createPDF"};
// Send a request to build our XL file.
$.ajax({
url: '/pdf.php',
data: strData,
type: 'get',
dataType: 'json',
success: function(data) {
alert(data);
$("##pdfLink").attr("href","/pdf/"+data);
},
error: function(e) {
console.log(e);
}
});
return false;
e.preventDefault();
})
Tại thời điểm này, khi tôi nhấp vào liên kết, phương thức được hiển thị chính xác với thông báo "Vui lòng đợi". Tệp của tôi không được xây dựng trên máy chủ (Đã xác nhận với cảnh báo của tôi trong trình xử lý thành công của tôi) và HREF của tôi không được cập nhật. Tuy nhiên, plugin không nhắc người dùng tải xuống.
Cảm ơn!
Bạn có thể thêm một liên kết cho "plugin fileDownload vĩ đại John Culviner của"? – jwfearn