Jquery &引用;“提神”;while循环内每n秒异步分页一次

Jquery &引用;“提神”;while循环内每n秒异步分页一次,jquery,html,asp.net-mvc,Jquery,Html,Asp.net Mvc,我试图让我的页面在var edit=true时异步“刷新”(我正在刷新包含部分视图的div元素)。当我点击我的按钮时,编辑被改变,该按钮有类:btn。我想知道我应该把代码放在哪里 我应该将while循环放在$(文档)中吗?准备好了吗? 我有点迷路了,因为这对我来说是全新的 这是我的代码: var edit = true; while(edit){ window.setInterval(function(){ alert('5 seconds'); }, 5000);

我试图让我的页面在
var edit=true
时异步“刷新”(我正在刷新包含部分视图的div元素)。当我点击我的按钮时,编辑被改变,该按钮有类:btn。我想知道我应该把代码放在哪里

我应该将while循环放在$(文档)中吗?准备好了吗? 我有点迷路了,因为这对我来说是全新的

这是我的代码:

var edit = true;

while(edit){
    window.setInterval(function(){
      alert('5 seconds');
    }, 5000);
}

$(document).on('click','.btn', function(){
    if(edit ? edit = false : true);
}

以下内容应每隔一段时间刷新一次页面(例如:30秒)


...

以下内容应每隔一段时间刷新一次页面(例如:30秒)


...

连续刷新时不需要
。只要在单击按钮时使用
clearInterval
,然后在下次单击时重新启动它

var区间,i=0;
$(“按钮”)。单击(函数(){
如果(间隔){
间隔=清除间隔(间隔);
}
否则{
间隔=设置间隔(函数(){
console.log(++i);
}, 1000);
}
});


启动/停止
连续刷新时不需要
。只要在单击按钮时使用
clearInterval
,然后在下次单击时重新启动它

var区间,i=0;
$(“按钮”)。单击(函数(){
如果(间隔){
间隔=清除间隔(间隔);
}
否则{
间隔=设置间隔(函数(){
console.log(++i);
}, 1000);
}
});



开始/停止
我想OP不是在问整页刷新。很抱歉,我的问题不够清楚,是我的错。我正在尝试刷新当前视图中div元素内的部分视图。我认为OP并没有询问整页刷新。很抱歉,我的问题不够清楚,是我的错。我正在尝试刷新当前视图中div元素内的部分视图。我将更新问题what has
if(edit?edit=false:true)与您的问题有关吗?即使是
警报
也与此无关。事实上,我看不出这些代码与您的问题有什么关系?而且,您的标签中有MVC,但问题没有提到这一点。你是在使用Angular还是类似的东西?我的项目是一个MVC ASP.NET应用程序,如果它不属于MVC,请随意编辑:)我是一个新手JavaScript不是这样工作的。这是一种单线程语言,你的
while
循环将永远不会中断。我将更新我的问题what has
if(edit?edit=false:true)与您的问题有关吗?即使是
警报
也与此无关。事实上,我看不出这些代码与您的问题有什么关系?而且,您的标签中有MVC,但问题没有提到这一点。你是在使用Angular还是类似的东西?我的项目是一个MVC ASP.NET应用程序,如果它不属于MVC,请随意编辑:)我是一个新手JavaScript不是这样工作的。这是一种单线程语言,您的
while
循环将永远不会中断。按钮工作正常,谢谢!在这段代码中,当第一次单击按钮时,间隔返回true,我可以复制
interval=setInterval(function(){console.log(++i);},1000)
进入我的
$(文档)。准备好
在页面加载后启动计时器了吗?之后我的按钮还会工作吗?我为你添加了一个“页面加载时启动”的示例@Roy_Dorsthorst,当你多次单击它时,它似乎有问题是的,我错过了函数中的
返回
。我的错@很高兴这对你有用!我做了另一个更改,并在函数中添加了一个
if(!interval)
,以防止在加载页面时用户单击按钮Bevor时出现争用情况。否则,可能会有两个同时的间隔。这应该可以解决它@Roy_Dorsthorst按钮起作用了,谢谢!在这段代码中,当第一次单击按钮时,间隔返回true,我可以复制
interval=setInterval(function(){console.log(++i);},1000)
进入我的
$(文档)。准备好
在页面加载后启动计时器了吗?之后我的按钮还会工作吗?我为你添加了一个“页面加载时启动”的示例@Roy_Dorsthorst,当你多次单击它时,它似乎有问题是的,我错过了函数中的
返回
。我的错@很高兴这对你有用!我做了另一个更改,并在函数中添加了一个
if(!interval)
,以防止在加载页面时用户单击按钮Bevor时出现争用情况。否则,可能会有两个同时的间隔。这应该可以解决它@罗伊·多尔索斯特
<head>
<meta http-equiv="refresh" content="30">
...
</head>