asp.net 页面回跳实现代码
程序员文章站
2024-03-07 21:11:15
主要是request.urlreferrer的用法 注意: 如果上一页面使用document.location方法导航到当前页面,request.urlreferrer返回...
主要是request.urlreferrer的用法
注意: 如果上一页面使用document.location方法导航到当前页面,request.urlreferrer返回空值
如果有a,b两个页面,在浏览器中直接请求a页面,在a页面的中page_load事件中导航到b 页面,
则 request.urlreferrer返回空。因为 在page_load事件中页面还未初始化,所以无法记录当前页的信息,
导航到b页面也就无法获得上一页面的信息
protected void page_load(object sender, eventargs e)
{
if (!ispostback)
{
if (request.urlreferrer != null)
{
viewstate["urlreferrer"] = request.urlreferrer.tostring();
}
if (session["user"] != null)
{
if (request.urlreferrer != null)
{
response.redirect(request.urlreferrer.tostring());
}
else
{
response.redirect("/");
}
}
username.value = request.form["uname"];
pass.attributes.add("value", request.form["password"]);
}
}
/// <summary>
/// 个人会员登陆
/// </summary>
protected void userlog()
{
lovetrip.bll.manage.users bllu = new lovetrip.bll.manage.users();
lovetrip.model.manage.users modeu = bllu.login(username.value.trim(), pass.text.trim());
if (modeu != null)
{
session["user"] = modeu;
session["usertype"] = 1;
command.public.moveusersession(1);
bbslogin(modeu.unick);
if (request.urlreferrer != null)
{
response.redirect(viewstate["urlreferrer"].tostring());
}
else
{
response.redirect("/");
}
}
else
{
page.clientscript.registerstartupscript(this.gettype(), "alert", "alert('帐号或密码输入有误!')", true);
}
}
注意: 如果上一页面使用document.location方法导航到当前页面,request.urlreferrer返回空值
如果有a,b两个页面,在浏览器中直接请求a页面,在a页面的中page_load事件中导航到b 页面,
则 request.urlreferrer返回空。因为 在page_load事件中页面还未初始化,所以无法记录当前页的信息,
导航到b页面也就无法获得上一页面的信息
复制代码 代码如下:
protected void page_load(object sender, eventargs e)
{
if (!ispostback)
{
if (request.urlreferrer != null)
{
viewstate["urlreferrer"] = request.urlreferrer.tostring();
}
if (session["user"] != null)
{
if (request.urlreferrer != null)
{
response.redirect(request.urlreferrer.tostring());
}
else
{
response.redirect("/");
}
}
username.value = request.form["uname"];
pass.attributes.add("value", request.form["password"]);
}
}
/// <summary>
/// 个人会员登陆
/// </summary>
protected void userlog()
{
lovetrip.bll.manage.users bllu = new lovetrip.bll.manage.users();
lovetrip.model.manage.users modeu = bllu.login(username.value.trim(), pass.text.trim());
if (modeu != null)
{
session["user"] = modeu;
session["usertype"] = 1;
command.public.moveusersession(1);
bbslogin(modeu.unick);
if (request.urlreferrer != null)
{
response.redirect(viewstate["urlreferrer"].tostring());
}
else
{
response.redirect("/");
}
}
else
{
page.clientscript.registerstartupscript(this.gettype(), "alert", "alert('帐号或密码输入有误!')", true);
}
}