Gridview实现单选按钮(radiobutton)

 

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            RadioButton rd = (RadioButton)e.Row.FindControl("RadioButton1");
            if (e.Row.RowIndex == 0)
            {

                rd.Checked = true;
            }
            //给每个RadioButton1绑定setRadio事件
            try
            {
                ((RadioButton)e.Row.FindControl("RadioButton1")).Attributes.Add("onclick", "setRadio(this)");
            }
            catch (Exception)
            { }
        }
       

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        //使用模版列里加RadioButton
        Label1.Text = "";
        foreach (GridViewRow gvr in GridView1.Rows)
        {
            try
            {
                if (((RadioButton)gvr.FindControl("RadioButton1")).Checked)
                {
                    Label1.Text = "当前选中第" + Convert.ToString(gvr.RowIndex + 1) + "个";
                    break;
                }
            }
            catch (Exception)
            { }
        }
        if (Label1.Text.Length == 0)
        {
            Label1.Text = "没有选中项";
        }

    }

 

<script type="text/javascript">
            function setRadio(nowRadio)
            {
                var myForm,objRadio;
                myForm=document.forms[0];
                ///alert(myForm);
                for(var i=0;i<myForm.length;i++)
                {
                    if(myForm.elements[i].type=="radio")
                    {
                        objRadio=myForm.elements[i];
                        ///alert(objRadio.name);
                        if(objRadio!=nowRadio && objRadio.name.indexOf("GridView1")>-1 && objRadio.name.indexOf("RadioButton1")>-1)
                        {
                       
                            if(objRadio.checked)
                            {
                                objRadio.checked=false;
                            }
                        }
                    }
                }
            }
        </script>

</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" ShowHeader="False" OnRowDataBound="GridView1_RowDataBound">
            <Columns>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:RadioButton ID="RadioButton1" runat="server" />
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <asp:Button ID="Button1" runat="server" Text="取选项" OnClick="Button1_Click" />
        <asp:Label ID="Label1" runat="server"></asp:Label>

    </div>
    </form>
</body>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值