Событие RadioButtonList SelectedIndexChanged не срабатывает при регистрации события onclick функции JS

Когда я нажимаю переключатели в элементе управления списком переключателей, вызывается функция 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>

Я попробовал оба вышеупомянутых метода, но код на стороне сервера не вызывается.

1 ответ

Вместо использования OnClick, используйте OnClientClick.

Используя OnClientClick, вы запускали дополнительные сценарии на стороне клиента вместе с событием на стороне сервера. Используя событие OnClick, вы заменили вызов для события сервера своим JavaScript.

Другие вопросы по тегам