gridView获得每行的值
前台代码:
<asp:GridView ID="GridView1" runat="server" DataKeyNames="ID" EmptyDataText="暂无试题" Width="100%" OnRowCommand="GridView1_RowCommand" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label id="Label24" runat="server" Text="一、单选题(每题1分)">
</asp:Label>
</HeaderTemplate>
<ItemTemplate>
<table id="Table2" cellSpacing="1" cellPadding="1" width="100%" align="center" border="0">
<tr>
<td colSpan="4">
<asp:Label id="Label1" runat="server" Text='<%# Container.DataItemIndex+1 %>'>
</asp:Label>
<asp:Label id="Label2" runat="server" Text='<%# Eval("content","、{0}") %>'>
</asp:Label>
<asp:Label id="Label3" runat="server" Text='<%# Eval("answer") %>' Visible="False">
</asp:Label>
<asp:Label id="Label4" runat="server" Text='<%# Eval("ID") %>' Visible="False">
</asp:Label>
</td>
</tr>
<tr>
<td width="35%">
<asp:RadioButton id="rbA" runat="server" Text='<%# Eval("answerA") %>' GroupName="Sl">
</asp:RadioButton></td>
<td width="35%">
<asp:RadioButton id="rbB" runat="server" Text='<%# Eval("answerB") %>' GroupName="Sl">
</asp:RadioButton></td>
<td></td>
</tr>
<tr>
<td width="35%">
<asp:RadioButton id="rbC" runat="server" Text='<%# Eval("answerC") %>' GroupName="Sl">
</asp:RadioButton></td>
<td width="35%">
<asp:RadioButton id="rbD" runat="server" Text='<%# Eval("answerD") %>' GroupName="Sl">
</asp:RadioButton></td>
<td></td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle Font-Size="12pt" HorizontalAlign="Left" />
</asp:GridView>
后台代码:
遍历gridview的每一行,取得RadioButton的值。
/// <summary>
/// 提交按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCommit_Click(object sender, EventArgs e)
{
ItemOperater io = new ItemOperater(Session);
;//取出单选题的每题分值
foreach (GridViewRow dr in GridView1.Rows)//对单选题每题进行判断用户选择答案
{
SelectedItem si = new SelectedItem();
string str = "";
if (((RadioButton)dr.FindControl("rbA")).Checked)
{
str = "A";
}
else if (((RadioButton)dr.FindControl("rbB")).Checked)
{
str = "B";
}
else if (((RadioButton)dr.FindControl("rbC")).Checked)
{
str = "C";
}
else if (((RadioButton)dr.FindControl("rbD")).Checked)
{
str = "D";
}
if (((Label)dr.FindControl("Label3")).Text.Trim() == str)//将用户选择结果和答案进行比较
{
score = score + singlemark;
}
si.selected = str; //选中的答案
Label lbAnswer = (Label)dr.FindControl("Label3");
Label lbID = (Label)dr.FindControl("Label4");
si.answer = lbAnswer.Text.Trim();
si.ID = Convert.ToInt32(lbID.Text.Trim());
io.Add(si);
}
insert(io); //加到数据库
lbScore.Text = score+"";
}
public void insert(ItemOperater io) {
;
if (Request["course_id"] != null)
{
course_id = Int32.Parse(Request["course_id"].ToString());
}
stu_id = Convert.ToInt32(Session["ID"].ToString());
io.InsertScore(stu_id, score, course_id);
}
gridView获得每行的值的更多相关文章
- ASP.NET 使用AJAX让GridView的数据行显示提示框(ToolTip)
介绍ASP.NET AJAX可以使你的web应用程序具有更丰富的功能和更多的用户响应. 本文中,我将演示如何通过ASP.NET AJAX的帮助,给像GridView这样的数据绑定控件的数据行增加pop ...
- bash命令行返回值和展开
bash命令行返回值和展开 标签(空格分隔): bash,命令,状态,展开 1.命令状态结果和执行结果 (1)命令执行的状态返回值,命令执行完成之后,其执行状态结果值保存于bash的特殊状态变量$?中 ...
- .net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】
1.首先在前台dataGridview属性中增加onRowDataBound属性事件 2.然后在后台Observing_RowDataBound事件中增加代码 protected void Obser ...
- 如何取得GridView被隐藏列的值
如何取得GridView被隐藏列的值 分类: ASP.net 2009-06-25 12:47 943人阅读 评论(1 ...
- DevExpress的GridView设置特定行的样式
GridView控件绑定事件: gridView_SampleData.CustomDrawCell += gridView_SampleData_CustomDrawCell; 根据自定义逻辑来改变 ...
- JS弄ASP.NET(C#)在页GridView信息选择行
做web发展还是新手我,为了之前获得Gridview中间值,它是通过服务器端控件通过第一Gridview将数据保存到服务器,当一个服务器,然后绑定的隐藏字段,在通过的js阅读隐藏字段值,如今,这种方法 ...
- GridView中数据行的操作
一个是直接动态绑定gridview 用3楼的办法就可以了 int j=1;//j的数值表示你要取的那一列的索引,要取第二列,j就设为1for (int i = 0; i < this.GridV ...
- 转:GridView中RowDataBound的取值
GridView是ASP.NET中功能强大的数据显示控件,它的RowDataBound事件为我们提供了方便的控制行.列数据的途径. 要获取当前行的某个数据列,我在实践中总结有如下几种方法: 1. Ce ...
- GridView点击行触发SelectedIndexChanged事件
1.在<% @Page ...... %>指令中添加 EnableEventValidation="false" 2.在RowDataBound事件中添加 protec ...
随机推荐
- 单纯形方法(Simplex Method)
最近在上最优理论这门课,刚开始是线性规划部分,主要的方法就是单纯形方法,学完之后做了一下大M算法和分段法的仿真,拿出来与大家分享一下.单纯形方法是求解线性规划问题的一种基本方法. 线性规划就是在一系列 ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- openjudge7834:分成互质组 解析报告
7834:分成互质组 总时间限制: 1000ms 内存限制: 65536kB 描述 给定n个正整数,将它们分组,使得每组中任意两个数互质.至少要分成多少个组? 输入 第一行是一个正整数n.1 &l ...
- 转[开发环境配置]在Ubuntu下配置舒服的Python开发环境
在Ubuntu下配置舒服的Python开发环境 Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的 ...
- Android Studio快捷键每日一练(5)
原文地址:http://www.developerphil.com/android-studio-tips-of-the-day-roundup-5/ 42.Enter键和Tab键补全 快捷键:Ent ...
- [译]学习IPython进行交互式计算和数据可视化(六)
第五章:高性能并行计算 一个反复被提及的反对使用Python进行高性能数值计算的言论是这种语言是动态解释型的,速度太慢.一种编译型低级语言,如C,能提供比它快几个数量级的运算速度.我们在第三章--使用 ...
- JavaScript基础插曲—元素样式,正则表达式,全局模式,提取数组
JavaScript基础学习 学习js的基础很重要,可以让自己有更多的技能.我相信这个以后就会用到. Eg:点击选择框,在div中显示出选择的数量 window.onload = function() ...
- 拓扑排序 --- hdu 4948 : Kingdom
Kingdom Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Sub ...
- dapper 注意事项之GUID
今天把ef框架换成了dapper,数据库使用的是mysql. 主键使用GUID,mysql数据库中设置的为varchar(36). 使用dapper报错,不能将string转换为GUID,后来调试比对 ...
- Netbeans 8.0.2 For PHP继续坑
仍然没有修复PHP好用的代码快速导航功能,坑!