WEB之回发页面

页面回发:

    页面回发指不是第一次请求,当用户点击该页面中的控件(如下拉框、按钮等)提交时,浏览器其实对页面进行的重载,这就是页面回发。


    这段时间主要是对考试系统进行优化,这次我要做的是将试卷中的试题类型进行设置顺序。页面如下:

    首先选择某学院下某课程的某套试卷,如果该试卷的试题类型已经排好序了,则显示出来,可以修改;如果该试卷的试题类型没有排序,则将该试卷的试题类型排序。


    设置好顺序后将该试卷ID和题型ID和顺序会单独一张表,所以在选择某试卷后首先要从顺序表里查看是否已经设置了顺序,若已经设置了该试卷的试题类型的顺序,则从顺序表里读出该试卷的试题类型顺序显示,然后可以修改已经设置好了的顺序,若没有设置则从试卷表里读出试题类型,然后设置顺序。对应的在设置顺序按钮事件里得判断是设置顺序还是修改已经设置好了的试题类型顺序,若是设置顺序就在顺序表里添加记录,如果是修改顺序则是在顺序表里修改顺序。


    我首先就想到了布尔类型变量在选择试卷时标记是已经设置了顺序还是没有设置好顺序。但是发现当该试卷已经设置了顺序后就有问题,然后在判断设置顺序那块设置断点发现,该变量的值一直都是默认值false,即使是已经设置了顺序,该变量的值应该为true,但是在判断的那块一直都是false。如下图:

    定义该变量:

  

    该变量的值一直是false,只能执行false对应的代码:


    接着在定义该变量的那块设置了个断点,发现每次页面回发都要初始化该变量,所以即使在选择试卷那块变量的值为true后,但是在设置顺序的按钮事件时回发页面,又初始化该变量了,所以该变量的值一直都是默认值false。

解决办法:

    在页面上放了个隐藏文本控件,用它的text属性存放标志值true或false,然后在设置顺序时判断该控件的text属性。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。