使用ASP点网在线问答
-
19-09-2019 - |
题
斐伊川,
我需要开发将有多选题在线问答网站。我希望有每页出现在用数字寻呼机一个问题,以便用户可以来回走。
我尝试使用FormView的用于显示的问题和单选按钮。我创建了一个类QANS,将举行由用户为他做了回答,这样我以后可以总结总得分问题选择答案。
现在,我面临的问题是,如下:
让用户选择一个RadioButton,说R,上的的PageIndex,说我,然后去一些其他页,说K.当用户返回到我页面,没有单选按钮的选择。 我试过设置单选真在Page_Load()的Checked属性添加代码,但它并没有帮助。我也试图与PageIndexChanged和PageIndexChanging事件相同,但单选按钮没有得到遏制。
被选定为某个特定问题的单选按钮已被存储,我可以打印使用的Response.Write(其中之一),但我不能够保持单选按钮选中。 怎能这样做?
解决方案
您应该能够使选中的单选按钮
protected override void OnPreRender(EventArgs e)
页面生命周期的事件
其他提示
你有没有为此使用的.Net向导控制考虑? 的ASP.Net 2.0向导控制
可以保存所选控件的状态在会话和往返行程后重新填充它们。
这是奇怪的是,它的回传后失去状态。是否有任何疯狂的代码在你ON_LOAD或pageIndexChanging或什么?
据我所知,你必须坚持跨越pageindexes的单选按钮的选中状态。您可以使用的ViewState对于作为可保留在回发数据的页面。
是这样的: -
//定义试图问题ID的列表 列表questionIdsAttempted;
//的列表添加到视图状态 如果(的ViewState [ “QuestionIdsAttempted”]!= NULL) { questionIdsAttempted =新列表() 的ViewState [ “QuestionIdsAttempted”] = questionIdsAttempted }
//问题ID添加到列表中,当用户尝试一个问题时 questionIdsAttempted.Add(QID);
//添加列表返回视图状态 的ViewState [ “QuestionIdsAttempted”] = questionIdsAttempted
和在单选按钮的checked属性页面加载,你可以调用与当前的问题ID的功能和功能将从视图状态获取列表并返回true或基于如果在列表中存在标识错误。
Ofcourse,你需要检查的基础上,程序的流程各个地方的视图状态的空性。
让我知道