C#get gridview radiobutton选择了答案 [英] C# get gridview radiobutton selected answer

查看:75
本文介绍了C#get gridview radiobutton选择了答案的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

protected void Page_Load(object sender, EventArgs e)
   {
       if (!IsPostBack)
       {
           DataTable dtquestion = new DataTable("Q1");
           dtquestion.Columns.Add(new DataColumn("ID", System.Type.GetType("System.UInt64")));
           dtquestion.Columns.Add(new DataColumn("Code"));
           dtquestion.Rows.Add(1, "1) Achievement of training objective");
           dtquestion.Rows.Add(1, "2) Level of training achieved");
           dtquestion.Rows.Add(1, "3) Delivery of education");
           dtquestion.Rows.Add(1, "4) Related to your job function");
           question1.DataSource = dtquestion;
           question1.DataBind();
       }

   }
   protected void btn_submit(object sender, EventArgs e)
   {
       /* GET answer for each question,insert DB */
   }





我的javascript每个问题只允许1个答案



my javascript allow only 1 answer per question

<script type="text/javascript">
    function GridSelectAllColumn(objType, chkName) {
        var oItem = objType.children;
        var theBox = (objType.type == "radio") ? objType : objType.children.item[0];
        var strPart = theBox.id.split("_");
        xState = theBox.checked;
        elm = theBox.form.elements;
        for (i = 0; i < elm.length; i++)
            if (elm[i].type == "radio" && elm[i].id != theBox.id && elm[i].id.indexOf(strPart[3]) > -1)
                elm[i].checked = !xState;
    }
</script>



我的gridview


my gridview

<asp:GridView runat="server" ID="question1"  CssClass="table table-striped table-bordered table-hover" DataKeyNames="ID" AutoGenerateColumns="false" HeaderStyle-BackColor="CornflowerBlue" HeaderStyle-Font-Bold="true" HeaderStyle-ForeColor="White" CellPadding="5">
            <Columns>
                <asp:BoundField DataField="Code" HeaderText="Question" ItemStyle-ForeColor="White" ItemStyle-HorizontalAlign="Left" ItemStyle-BackColor="graytext" />

                <asp:TemplateField HeaderText="Low">
                    <ItemStyle HorizontalAlign="Center" />
                    <ItemTemplate>
                        <asp:RadioButton runat="server" ID="check1" onclick="javascript:GridSelectAllColumn(this, '1');" />
                    </ItemTemplate>
                </asp:TemplateField>

                <asp:TemplateField HeaderText="High">
                    <ItemStyle HorizontalAlign="Center" />
                    <ItemTemplate>
                        <asp:RadioButton runat="server" ID="check2" onclick="javascript:GridSelectAllColumn(this, '2');" />
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
<asp:Button ID="Nominate" Text="Submit" CssClass="btn btn-success" runat="server" OnClick="btn_submit" />





我的尝试:



尝试获得用户选择答案

check1.text

check2.text

但是失败



What I have tried:

tried get the user selection answer by
check1.text
check2.text
but failed

推荐答案

试试这样



try like this

protected void btn_submit(object sender, EventArgs e)
        {
            foreach (GridViewRow row in question1.Rows)
            {
                string code = row.Cells[0].Text;
                bool low = (row.FindControl("check1") as RadioButton).Checked;
                bool high = (row.FindControl("check2") as RadioButton).Checked;

            }
        }


这篇关于C#get gridview radiobutton选择了答案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆