バックグラウンド プロセスのステータスをポーリングしています。:status
HTML5 data 属性を使用して、バックグラウンド プロセスの (モデル属性) を js ポーリング関数に渡そうとしています。バックグラウンド ジョブが終了すると、ステータスは正常に更新されますが、私の JavaScript は更新されたステータスを取得していません。
<div class="report" data-report-id="<%= @report.id %>" data-report-completed="<%= @report.completed? %>">
<% if @report.completed? %>
@report.completed?
メソッドが正しく機能することは確かです。これが私のjavascriptです。属性にアクセスしてdata-report-completed
も、更新されたステータスが返されません。
$(document).ready(function() {
if ($(".report-loading").length > 0) {
showActivityIndicator();
console.log("Loading...");
setTimeout(checkReportStatus, 3000);
}
});
function checkReportStatus() {
var report_completed = $(".report").attr("data-report-completed");
if (report_completed == true) {
console.log("Completed");
var report_id = $(".report").attr("data-report-id");
location.reload();
}
else {
console.log("In progress...");
setTimeout(checkReportStatus, 3000);
}
}