get_user_record() この関数は、データベースからデータを取得するメソッドを呼び出します。データベース数を継続的にチェックし、それに応じて進行状況バーに値を与えるこのメソッド showUpdatedProgressBar() メソッドからの応答が必要ないため、タイムアウトを使用しました。その目的のために、動作している setInterval() 関数を使用しましたが、間隔をクリアできませんでした。どこが間違っているか教えてください。
function get_user_record(){
$.ajax({
url:"/GetData",
type: "GET",
timeout: 2000,
success:function(result){
//alert('success');
},
error: function(xhr, status, err){
//alert('Connection Error. Please try again.')
}
});
var timer = 0;
showUpdatedProgressBar(timer);
}
}
function showUpdatedProgressBar(timer){
$.ajax({
url:"/get_updated_data",
type: "GET",
success:function(result){
result = result.split(',');
var obj = {totalRecords: result[0], recordsTaken: result[1]};
var bar_value = obj.recordsTaken/obj.totalRecords * 100;
$( "#progressbar" ).progressbar({ value: bar_value });
if(obj.recordsTaken == obj.totalRecords ){
clearInterval(timer);
}
else
{
timer = setInterval(function(){ showUpdatedProgressBar(timer) },1000);
}
}
});
}