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 ...
随机推荐
- Android 2.x中使用actionbar - Actionbarsherlock (2)
先前有一个项目,是基于android4.0来开发,使用到了Fragment及ActionBar,没打算支持android2.1-android2.3系列版本 写完之后,我将此应用发布到百度应用,一天以 ...
- MVC中Action参数绑定的过程
一.题外话 上一篇:MVC中Action的执行过程 ControllerContext 封装有了与指定的 RouteBase 和 ControllerBase 实例匹配的 HTTP 请求的信息. 二. ...
- Moon转告给你一个比Log4net更好日志框架--TracerX Logger 及其对应的日志查看器
一.介绍 TracerX logger是一个易于上手,且拥有众多高级特性的.NET日志框架. 它能够发送输出结果到多目的地(循环文件.事件日志等....).它也能生成文本和二进制文件.它拥有一个强大的 ...
- 五、BLE(下)
1.1 GATT server Service 通过走读代码, GATT Server作为一个GATT service,我是没有发现其发挥了多大功能,其负责处理的消息GATT_SERVER ...
- 使用Microsoft Fakes进行单元测试(1)
一:什么是单元测试 单元测试是对软件进行准确性验证的步骤.单元测试并不进行整个软件功能的测试,仅仅是对于最小工作单元的测试.一般最小工作单元就是指方法/函数等. 这里并不打算对单元测试的概念及基础进行 ...
- C#--静态成员的生命周期
- C#中方法的声明
C#中方法的声明(四要素) 访问修饰符 :public,private(方法的默认访问修饰符) 返回值类型:void 和 非void 方法名称 : 规范是方法名称取动词,每个单词的首字母大写. ...
- JAVA - IDEA快捷键(精简版)
快捷键 功能 Ctrl + Alt + V 对应eclipse ctrl + l + 2 自动补全 Ctrl + Alt + L 对应eclipse ctrl + shift + o 代码格式化 Ct ...
- Visual Studio 2012 Update 4 RC 启动调试失败解决方案
以下解决办法适用于任何Visual Studio开发环境,及Windows NT 6.1以上系统. 系统:Windows 8.1 Enterprise x64 RTM 开发环境:Visual Stud ...
- Android短信Notification的几个ID
private static final int NOTIFICATION_ID = 123; public static final int MESSAGE_FAILED_NOTIFICATION_ ...