当JS函数onclick事件注册时,未触发RadioButtonList SelectedIndexChanged事件

本文关键字:事件 SelectedIndexChanged RadioButtonList JS 函数 onclick 注册 | 更新日期: 2023-09-27 18:14:41

当我点击单选按钮列表控件中的单选按钮时,javascript函数被调用,但服务器端onchange事件没有被触发。我尝试了同样的"onchange"事件的控制,但没有工作。

第一个类型-

<asp:RadioButtonList ID="rdoRightPeriod" runat="server" CssClass="text" 
    OnSelectedIndexChanged="rdoRightPeriod_SelectedIndexChanged" AutoPostBack="true" 
    RepeatDirection="Horizontal" onclick="return showConfirmMessageBoxNew()">
    <asp:ListItem Text="Year Based" Value="Y"></asp:ListItem>
    <asp:ListItem Text="Perpetuity" Value="P"></asp:ListItem>
    <asp:ListItem Text="Run Based" Value="R"></asp:ListItem>
</asp:RadioButtonList>
第二种类型

<asp:RadioButtonList ID="rdoRightPeriod" runat="server" CssClass="text" 
    OnSelectedIndexChanged="rdoRightPeriod_SelectedIndexChanged" AutoPostBack="true" 
    RepeatDirection="Horizontal">
    <asp:ListItem Text="Year Based" Value="Y" onclick="return showConfirmMessageBoxNew()"></asp:ListItem>
    <asp:ListItem Text="Perpetuity" Value="P" onclick="return showConfirmMessageBoxNew()"></asp:ListItem>
    <asp:ListItem Text="Run Based" Value="R"onclick="return showConfirmMessageBoxNew()"></asp:ListItem>
</asp:RadioButtonList>

我尝试了以上两种技术,但是服务器端代码没有被调用。

当JS函数onclick事件注册时,未触发RadioButtonList SelectedIndexChanged事件

不要使用OnClick,而是使用OnClientClick。

使用OnClientClick,您可以在服务器端事件旁边运行附加客户端脚本。通过使用OnClick事件,您已经用JavaScript替换了服务器事件的调用。