当用户坐在我的页面上时,每隔5分钟,我需要对数据库进行Ajax检查,以查看某些行是否包含某个值。如果有一个或多个,则需要弹出一个简单的警报。
不知道从哪里开始。
谢谢!
答案 0 :(得分:1)
为什么不使用asp.net ajax扩展名中的asp Timer。
这是一个小样本:
http://msdn.microsoft.com/en-us/library/system.web.ui.timer.interval.aspx
此致
答案 1 :(得分:0)
您真的想使用ASP.NET Ajax吗?
如果您想要一种简单的方法,请实现:
1 - 创建一个新的通用处理程序(ashx页面),例如调用它refreshDbValues.ashx
2 - 在那里添加你的代码,最后返回你想要的信息,例如:
public void ProcessRequest (HttpContext context) {
string r = "",
time = context.Request["t"];
// your code - start
r = "There are new results to see";
// your code - end
context.Response.ContentType = "text/plain";
context.Response.Write(r);
}
3 - 现在您已经完成了服务器部分,让我们在您的页面中执行客户端部分,添加此jQuery代码:
var processId = 0;
$(document).ready(function() {
// let's make this method fires every 2 seconds
processId = setInterval(requestNewValue, 2000);
});
function requestNewValue() {
var now = new Date();
$.ajax({
url: "refreshDbValues.ashx",
type: "GET",
data: { t: now.getTime() }
success: function(data){
// do we have text to show?
if(data.length > 0) {
alert(data);
}
},
error: function(msg) {
alert('Error found:\n' + msg);
}
);
}
答案 2 :(得分:0)
Balexandre是一个很好的解决方案,对我的应用程序非常有效。
我将其变体与toastr结合使用,以通知我的网络应用程序用户最近的更新。绝对简化了我认为将是一个非常繁琐的过程。