//定时调用读取数据点击事件
var autoSender = window.setInterval(function() {
$("#readData").click(function() {
$.ajax({
url : "PCHanderTag/readNFC",
type : "GET",
dataType : "json",
success : function(response) {
//alert(response.result);
$("#nfcid").val(response.cardUID);
$("#data").val(response.readData);
},
error : function(response) {
alert(response.result);
$("#nfcid").val("");
$("#data").val("");
}
})
})
}, 5000)
// 清除setInterval自动调用
$("#achieveRead").click(function() {
clearInterval(autoSender);
})
在刚开始使用setInterval没有用到window则导致持续调用,clearInterval不起作用,加上之后就好了。
window.clearInterval()方法和window.setInterval()
方法 window.setInterval()
功能:按照指定的周期(以毫秒计)来调用函数或计算表达式。
语法:setInterval(code,millisec)
解释:code:在定时时间到时要执行的JavaScript代码串。
millisec:设定的定时时间,用毫秒数表示。
返回值:定时器的ID值,可用于clearInterval()方法停止指定的定时器。
注:setInterval()方法会不停地调用函数,直到用clearInterval()终止定时或窗口被关闭。
方法window.clearInterval()
功能:取消由setInterval()方法设置的定时器。
语法:clearInterval(id_of_setinterval)
解释:id_of_setinterval:由setInterval()返回的ID值。该值标识了一个setInterval定时器。
也就是:window.setInterval()返回的就是window.clearInterval的参数
例子:
var count = 0;
var timeID;
function timeCount()
{
document.getElementByIdx_x_xx(‘timetxt’).value = count;
count++;
}
function beginCount()
{
timeID = window.setInterval(“timeCount()”,1000);
}
function stopCount()
{
clearInterval(timeID);
}