前台代码:

<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. 让微信扫描直接下载你的APK

    去年在做一个项目的时候,用微信扫描apk下载失效,显示空白页,网上找找发现在后面加一个字符串即可,于是简单搞定.过了一阵子,今年不行了,我的敏捷个人下载二维码也失效了,今天和大家说一下,现在如何解决这 ...

  2. 简单的Linq笔记

    最近带一个新人,被问到Linq的一点东西,回答他后,自己记录下,防止自己懵逼. Linq中查询一个表中指定的几个字段: var ts = t.FindAllItems().Where(P => ...

  3. ES6笔记(3)-- 解构赋值

    系列文章 -- ES6笔记系列 解构赋值,即对某种结构进行解析,然后将解析出来的值赋值给相关的变量,常见的有数组.对象.字符串的解构赋值等 一.数组的解构赋值 function ids() { ret ...

  4. SQL 语句的TOP,Distinct语句

    --Top获取前几条数据,一般都与Order By连用 SELECT TOP 3 * FROM dbo.MyStudent --查询Student表中前3条所有的数据 SELECT TOP 3 S_N ...

  5. Linq查询操作之聚合操作(count,max,min,sum,average,aggregate,longcount)

    在Linq中有一些这样的操作,根据集合计算某一单一值,比如集合的最大值,最小值,平均值等等.Linq中包含7种操作,这7种操作被称作聚合操作. 1.Count操作,计算序列中元素的个数,或者计算满足一 ...

  6. Spring MVC 对于@ModelAttribute 、@SessionAttributes 的详细处理流程

    初学 Spring MVC , 感觉对于 @ModelAttribute 和 @SessionAttributes 是如何被Spring MVC处理的,这一流程不是很清楚, 经过Google资料,有了 ...

  7. Android应用中如何保护JAVA代码

    Java Classes字节码的反编译太容易了,有很多功能强大的反编译利器可以轻松的将Java字节码 反转为源代码,但是android中普通.apk文件可以轻松的被反编译为Java源代码吗? 答案是当 ...

  8. C#编程总结(三)线程同步

    C#编程总结(三)线程同步 在应用程序中使用多个线程的一个好处是每个线程都可以异步执行.对于 Windows 应用程序,耗时的任务可以在后台执行,而使应用程序窗口和控件保持响应.对于服务器应用程序,多 ...

  9. sqlserver中的循环遍历(普通循环和游标循环)

    sql 经常用到循环,下面介绍一下普通循环和游标循环 1.首先需要一个测试表数据Student

  10. MultiLine Text光标停留在第一行

    MultiLine Text是多行文本,默认设置下,光标是停留在控件中间的,很不好看. 解决的方法是设置属性android:gravity="top",这样光标就会停留在第一行.