【问题标题】:How to detect when a radio button in a DataGrid is selected?如何检测何时选择了 DataGrid 中的单选按钮?
【发布时间】:2015-08-23 10:26:51
【问题描述】:

我的 webapge 上有一个如下所示的 DataGrid:

<asp:datagrid id="dgCodes" runat="server" bodyHeight="300px" CssClass="tblScroll" Width="100%">
    <Columns>
        <asp:TemplateColumn ItemStyle-HorizontalAlign="Center" HeaderStyle-CssClass="clsGridHeaderText"
            HeaderStyle-Wrap="False" HeaderStyle-Width="10%" ItemStyle-Width="10%">
            <HeaderTemplate>
                Select
            </HeaderTemplate>
            <ItemTemplate>
                <INPUT type="radio" name="chkSelect"  TabIndex="-1" value='<%# DataBinder.Eval(Container, "DataItem.Code") %>' onclick="mfpSetCode(this);"  <%# mfpDisable(DataBinder.Eval(Container, "DataItem.Code")) %>>
            </ItemTemplate>
        </asp:TemplateColumn>
    </Columns>
</asp:datagrid>

所以有 1 个单选按钮列,标题为“选择”,然后在数据绑定到 DataGrind 后添加几列。

当用户在此 DataGrid 中选择一个单选按钮时,它应该使用其中一个绑定列中的唯一值填充 2 个子 DataGrid。

我能够为网格设置一个 SelectedIndexChanged 事件,希望它能捕捉到单选按钮列的选择,然后我可以通过这种方式获取数据,但它没有。

这样选择RB时如何获取一些数据?

【问题讨论】:

    标签: asp.net vb.net datagrid


    【解决方案1】:

    请改用&lt;asp:RadioButton&gt;。这将为您提供OnCheckChanged 事件。

    <asp:RadioButton ID="rbSelect" runat="server"
        Text='<%# DataBinder.Eval(Container, "DataItem.Code") %>'
        OnCheckChanged="rbSelect_CheckChanged"
        AutoPostBack="true" />
    

    然后在你的代码后面处理事件。

    Protected Sub rbSelect_CheckChanged(ByVal sender As Object, ByVal e As EventArgs)
    {
    
    }
    

    【讨论】:

    • 在运行时选择网格中的行时,该事件似乎不会触发。我错过了什么吗?
    • 当你选择行时它不应该被触发。当您单击该行上的 RadioButton 时,它应该会触发。
    • 对不起,我就是这个意思。没有被抓到。尝试在事件存根之后添加“Handles rbSelect.CheckedChanged”,尝试在 PageLoad 中手动附加处理程序。无论哪种方式,在选择单选按钮时都不会在事件中触发断点。我认为这可能是 PostBack “中断”的东西,因为每次我选择某些东西时 Page_Load 都会被触发。
    • 这是可能的。确保您没有在每个 PostBack 上绑定 DataGrid。
    • 不幸的是,网格确实在 PostBack 上重新绑定。老实说,我不是 100% 确定为什么,这与我相信的网格分页有关。新工作,我还不完全熟悉代码库/逻辑:(
    猜你喜欢
    • 2014-04-09
    • 2021-10-21
    • 2012-04-17
    • 2021-12-05
    • 1970-01-01
    • 2012-06-25
    • 2014-10-09
    • 2014-07-11
    • 2022-09-22
    相关资源
    最近更新 更多