前台代码:

<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获得每行的值的更多相关文章

  1. ASP.NET 使用AJAX让GridView的数据行显示提示框(ToolTip)

    介绍ASP.NET AJAX可以使你的web应用程序具有更丰富的功能和更多的用户响应. 本文中,我将演示如何通过ASP.NET AJAX的帮助,给像GridView这样的数据绑定控件的数据行增加pop ...

  2. bash命令行返回值和展开

    bash命令行返回值和展开 标签(空格分隔): bash,命令,状态,展开 1.命令状态结果和执行结果 (1)命令执行的状态返回值,命令执行完成之后,其执行状态结果值保存于bash的特殊状态变量$?中 ...

  3. .net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】

    1.首先在前台dataGridview属性中增加onRowDataBound属性事件 2.然后在后台Observing_RowDataBound事件中增加代码 protected void Obser ...

  4. 如何取得GridView被隐藏列的值

    如何取得GridView被隐藏列的值         分类:             ASP.net              2009-06-25 12:47     943人阅读     评论(1 ...

  5. DevExpress的GridView设置特定行的样式

    GridView控件绑定事件: gridView_SampleData.CustomDrawCell += gridView_SampleData_CustomDrawCell; 根据自定义逻辑来改变 ...

  6. JS弄ASP.NET(C#)在页GridView信息选择行

    做web发展还是新手我,为了之前获得Gridview中间值,它是通过服务器端控件通过第一Gridview将数据保存到服务器,当一个服务器,然后绑定的隐藏字段,在通过的js阅读隐藏字段值,如今,这种方法 ...

  7. GridView中数据行的操作

    一个是直接动态绑定gridview 用3楼的办法就可以了 int j=1;//j的数值表示你要取的那一列的索引,要取第二列,j就设为1for (int i = 0; i < this.GridV ...

  8. 转:GridView中RowDataBound的取值

    GridView是ASP.NET中功能强大的数据显示控件,它的RowDataBound事件为我们提供了方便的控制行.列数据的途径. 要获取当前行的某个数据列,我在实践中总结有如下几种方法: 1. Ce ...

  9. GridView点击行触发SelectedIndexChanged事件

    1.在<% @Page ...... %>指令中添加 EnableEventValidation="false" 2.在RowDataBound事件中添加 protec ...

随机推荐

  1. Android开发学习清单

    目录: 第1章 Android应用与开发环境1.1 Android的发展和历史1.1.1 Android的发展和简介1.1.2 Android平台架构及特性1.2 搭建Android开发环境1.2.1 ...

  2. 一:验证微信的Token

    前言:申请到微信公众号的同学,可能会挺感兴趣的,毕竟微信公众号,确实是一个好东西,它提供了一个很好的平台,而且它自带有一套管理模板,对于微信公众号可以很好的管理. 但是也仅仅是很好的管理,因为作为开发 ...

  3. IE9父容器overflow:auto时,子容器状态更改导致滚动条下出现额外空间的问题探讨

    IE的每次跟新都会有一些奇葩的bug,我们默默承受了. 这个问题在项目中出现困扰了我近一个星期,这里记录一下.看下面实例 <style> .panel{ width: 200px; ove ...

  4. 跟着官网的例子学Reacjs (一)FilterableProductTable

    最近开始学习React,发现最好的方法不是看这个书那个书,而是直接上官网,一步步的跟着学习,真的获益匪浅.许多翻译的书上漏掉的知识点都可以学到. 入门的一些准备工作可以参照官网的步骤,引入依赖的核心包 ...

  5. ios基础之 view的frame 与 bounds 的区别 (转)

    前言: 学习ios开发有一段时间了,项目也做了两个了,今天看视频,突然发现view的frame和bound两个属性,发现bound怎么也想不明白,好像饶你了死胡同里,经过一番尝试和思考,终于弄明白bo ...

  6. 【转】nginx+iis实现负载均衡

    最近在研究分布式系统架构方面的知识,包括负载均衡,数据库读写分离,分布式缓存redis等.本篇先从负载均衡服务架构入手,关于负载均衡百度百科的定义如下:负载均衡,英文名称为Load Balance,其 ...

  7. java反射的基础学习代码

    java反射的学习,好多东西不太理解,主要分析了constructor,method,field,数组和调用main函数等反射的多个方面小例子. 主要的练习类 package javaAdvanced ...

  8. 表单input中录入资料的检查方法及示例

    本文内容 表单录入信息的检查原则 常见检查的三种方法 示例     输入框有字符长度的限制     输入框有输入字符个数范围的限制 知识补给--检查方式的介绍     输入框只可(或不可)输入数 ...

  9. 【C#】Excel舍入函数Round、RoundUp、RoundDown的C#版

    本人在C#中进行小数舍入的时候常常会怀念Excel中的Round.RoundUp.RoundDown这几个函数,原因就是后者“接地气”,比较符合俺小老百姓的舍入要求,啥“银行家舍入法”就让银行家用去吧 ...

  10. 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板

    [源码下载] 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板 作者:webabcd 介绍不可或缺 Window ...