本人新手,在做一个在线考试系统的考试部分,需要从数据库中读入试卷的信息,(比如选择题的数量)然后通过随机抽题,在页面上显示出同等数量的题目供考生答题。
现在的问题是:例如我们获取了数据库中的值说 需要输出30个选择题,包括题干和备选答案,现在需要动态的在页面上显示多个RadioButton控件,并且在考生完成答题后读取答案。就是这样一个过程,请问高手们要怎么实现才好?
现在的问题是:例如我们获取了数据库中的值说 需要输出30个选择题,包括题干和备选答案,现在需要动态的在页面上显示多个RadioButton控件,并且在考生完成答题后读取答案。就是这样一个过程,请问高手们要怎么实现才好?
在你创建RadioButton 的时候 可以 如选择循环创建可以for(int i=0;i<10;i++)
{
RadioButton rb=new RadioButton ();rb.ID="mingzi";myPan.Contorl.add(rb);]
想取值的时候
foreach (Control ctr in this.myPan.Controls)
{
if (ctr.GetType() == typeof(RadioButton))
{
RadioButton rb= (RadioButton)ctr;
if (rb.ID.LastIndexOf("mingzi") > -1)
{
if(rb.Checked)
{
//你的逻辑 }
}
}
}
然后遍历呈现为HTML服务器端控件,并按照题目的序号分配相应的ID(如Question1,Question2)并添加相应的客户端处理程序(JavaScript)。
然后在客户端点击时将用户的答案和题目序号整合为一个字符串,将这个字符串放在一个HiddenField控件的Value中。
页面回发的时候读取这个HiddenField的Value。
然后进行字符串拆分。获取用户的答案。
如果考试题量大的话估计有100-200个题,并且同时有多人考试,如果保存在Session中,服务器的负载……我再去实验下4楼朋友提供的方法。