我有一个Asp.Net的网络表单,我想让JavaScript计算我刷新页面的时间。
答案 0 :(得分:1)
您想为每位用户计算一次吗?或者整个申请?
如果您正在为整个应用程序执行操作,则可以在每个页面请求中使用Global.asax中的应用程序变量。但如果您的应用程序回收,那可能会丢失。
如果您想为每个用户执行操作您可以在客户端使用服务器端会话或cookie。
答案 1 :(得分:1)
如果您想在客户端进行,只需在每次localstorage
事件发生时保存(并检索)load
上的信息
答案 2 :(得分:0)
您可以将其保存在Session对象中。
答案 3 :(得分:0)
您可以使用jQuery调用准备好的地址。 例如:
$.ajax({
url: ".../countPageRefreshes.aspx",
data: { page: "thisPageAddress" }
})
然后,在countPageRefreshes中,您可以增加次数,刷新页面并将其保存在某处。
答案 4 :(得分:0)
您可以使用js或asp在cookie中设置值,或在会话值(针对单个用户)或应用程序值(针对所有用户)中设置值,这不是必需的javascript。
您必须将此代码服务器端放在页面load上。
对于所有用户:
Application["refresh_count"] =
Convert.ToInt64(HttpContext.Current.Application["refresh_count"]) + 1;
对于有会话的单个用户:
Session["refresh_count"] = Convert.ToInt64(Session["refresh_count"]) + 1;
OR
Response.Cookies["UserSettings"]["refresh_count"] = Convert.ToInt64(Response.Cookies["UserSettings"]["refresh_count"]) + 1;
Response.Cookies["UserSettings"].Expires = DateTime.Now.AddDays(1d);