asp登陆后弹出页面,控制弹出该页面次数
我在网站登陆后,写入js,弹出一个子窗体
但是每次刷新页面,每次都弹出来一次
我想控制用户登陆后,只弹出一次,应该怎么写啊?
请高手帮帮忙吧!想了一天了。。。
下面是我写的js
<script type="text/javascript">
function messages(){
var cishu= document.getElementById("mes").value;
if("0"== cishu){
window.showModalDialog('message.asp','提示信息','height=100,width=100,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
}
document.getElementById("mes").value="1";
}
</script>
<body onload="messages()">
<input id="mes" name="mes" value="0" type="hidden"/>
</body>
一旦刷新页面,文本框的值又重新赋值为0
------解决方案--------------------ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "GoUrl", "window.open('AcceptInfo.aspx','MainPage','');", true);
------解决方案--------------------你为什么要在load事件里边写呢?你写到load里,加载一次,跳一次。你可以使用按钮点击来弹出啊?!
------解决方案--------------------写入cookiess 判断
------解决方案--------------------在后台的Page_load事件中
if (!Page.IsPostBack)//只在第一次回传注册js事件,其它状态不注册
{
xx.Atrributes.Add("","messages()");
}
这段看要加在窗体还是。。没实验,看下Page.Attributes行不行,行的话就是参数第一个就是onload
------解决方案--------------------
这个需要用到会话控制.LZ可以看看那方面的东东.
有COOKIE,SESSION等等.如果LZ急用可以这样改下:
JScript code
<%
document.getElementById("mes").value=request("cishu")
%>
<script type="text/javascript">
function messages(){
var cishu= document.getElementById("mes").value;
if("0"== cishu){
window.showModalDialog('message.asp?cishu=1','提示信息','height=100,width=100,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
}
document.getElementById("mes").value="1";
}
</script>