5.2练习——跳转页面后判断相关条件再决定时候跳回首页
条件:
1.首页上的按钮需要显示 我要抽奖 ,高41像素,宽225像素,在页面居中
2.点击按钮后跳转到一个空白页面上
3.进入空白页面后,程序内部进行抽奖,抽奖后直接显示中奖信息
4.抽奖时间为:早上11点到12点以及下午16点到17点
5.抽奖随机数:1~5,一等奖。6~15,二等奖。16~45,三等奖。46~100,纪念奖。
使用到的代码:
DateTime 时间类 ,Random 数学计算随机类 ,Random需要配合 int 一个整数配合使用。主要就是int整数来存放随机数。
if 与else if 最重要的是还要有信息弹出,使用下面这个语句
ScriptManager.RegisterStartupScript 这个就是在asp里面使用javaScrip 代码,然后原来javaScrip代码在asp里面占的比重也是很大。所以必须要学会!!
下面是关于这个语句的一部分参考知识:
其中第一个参数为要注册脚本的控件ID,试了一下,只要是本页面的就行。
第二个参数为注册脚本控件类型,是控件还是this的GetType()都可以,typeOf(string)也没问题.
第三个脚本函数的名字,随便起。
第四个是脚本内容。
第五个是标明是否再添加脚本标签,如果第四个参数里包含了<script></script>标签,此处则为false,否则为true。
超重要的示范语句:其实这个才是真正需要学习的核心..........
代码如下:
ScriptManager.RegisterStartupScript(this, this.GetType(), "message", "alert(\"该时间段不能抽奖,请上午11点到12点间或下午16点到17点间在来抽奖\");location.href=\"Default.aspx\"", true);
分析:第一个参数:this,表示自己的意思,具体我也不是非常清楚,估计是指代的目前运行的这个程序或页面吧
第二个参数:this.GetType() ,这个就是获取自己的类型了
第三个参数:"message",脚本函数的名字
第四个参数:"alert(\"该时间段不能抽奖,请上午11点到12点间或下午16点到17点间在来抽奖\");location.href=\"Default.aspx\""
这个需要拆开来看,而且需要特别注意反斜杠符号后的双引号,其作用就是转义字符。
\"该时间段不能抽奖,请上午11点到12点间或下午16点到17点间在来抽奖\" 这一段拆出来单独看,就是用转义字符把这些文字使用双引号,放在括号里面,括号前面的是alert
;location.href=\"Default.aspx\"" 然后是分号,接着使用javaScript里面的重定向location.href
\"Default.aspx\" 这一个就是代表了跳转到哪一个页面
第五个参数:true,看上面说明!
以上,就是这么多了,最后贴上我的代码!
1.第一页面是:index.aspx 下的代码
2.第二个页面是index.aspx.cs的代码:
3.第三个页面是luck.aspx.cs的代码:
{
DateTime time = DateTime.Now;
if (time.Hour == 11 || time.Hour == 16)
{
Random luck = new Random();
int int_luck = luck.Next(1, 101);
if (int_luck >= 1 && int_luck <= 5)
{
Response.Write("恭喜你获得一等奖!幸运号码是;" + int_luck);
}else if (int_luck >= 6 && int_luck <= 15)
{
Response.Write("恭喜你获得二等奖!幸运号码是;" + int_luck);
}
else if (int_luck >= 16 && int_luck <= 45)
{
Response.Write("恭喜你获得三等奖!幸运号码是;" + int_luck);
}
else if (int_luck >= 46 && int_luck <= 100)
{
Response.Write("恭喜你获得幸运奖!幸运号码是;" + int_luck);
}
else
{
ScriptManager.RegisterStartupScript(this,this.GetType(),"Message", "alert(\"该时间段不能抽奖,请上午11点到12点间或下午16点到17点间在来抽奖\");location.href=\"index.aspx\"", true);
}
}