ASP.NET radiobuttonlist onclientclick

jaf*_*ffa 13 javascript vb.net asp.net

我注意到ASP.NET控件集中的radiobuttonlist没有OnClientClick()属性.这是微软有目的的遗漏吗?无论如何,我试图将OnClick添加到单选按钮列表中,如下所示:

For Each li As ListItem In rblSearch.Items
    li.Attributes.Add("OnClick", "javascript:alert('jon');")
Next
Run Code Online (Sandbox Code Playgroud)

但唉,它不起作用.我甚至在firebug中检查了源代码,并且radiobuttonlist中没有显示javascript.有谁知道如何让这个非常简单的工作?我正在使用ASP.NET控件adpaters,所以不知道这是否与它有任何关系.

(我希望asp.net/javascript可以解决方案!)

Dan*_*ger 26

我发现我可以向RadioButtonList添加一个onclick属性,它会按预期触发javascript客户端.

<asp:RadioButtonList ID="RadioButtonList1" runat="server" onclick="alert('RadioButtonListSelectChange');">
    <asp:ListItem Text="One" Value="1"/>
    <asp:ListItem Text="Two" Value="2"/>
</asp:RadioButtonList>
Run Code Online (Sandbox Code Playgroud)

然后,您可以编写可以确定当前所选列表项的客户端脚本.

  • 我在FireFox中尝试了这个,但发现onclick事件被触发两次(大概每个列表项一次). (2认同)

Dan*_*Dan 1

因为它是一个列表控件,所以没有 OnClientClick 事件。使用回发 (SelectedIndexChange) 或编写 javascript 来捕获每个单选按钮的点击。