RadioButtonList SelectedIndexChanged不会每次都触发

时间:2016-10-05 08:46:41

标签: c# asp.net telerik

我在asp.net UserControl中有一个RadioButtonList控件。它有2个单选按钮"离开"和"可用"。点击“离开”,我会将来自SelectedIndexChanged事件的警报显示为"您确定要离开吗?"使用确定和取消按钮。点击取消后,它会自动选择"可用"。这很好。

第1步:用户点击取消恢复为"可用"

步骤2:当用户再次点击"离开"时,它不会显示来自RadioButton的SelectedIndexChanged的警报。

第3步:现在它会再次运作。

为此,我启用了EnableViewState =" true"对于那个UserControl。但它仍然没有第二次起作用。

以下是服务器端SelectedIndexChanged事件

protected void rdlUser_SelectedIndexChanged(object sender, EventArgs e)
{
    if (rdlUser.SelectedIndex == 1)
    {
        txtUser.Enabled = true;
    }
    else
    {
        radWindowManager.RadConfirm("Are you sure you want to take Leave?", "confirmSave" + this.ClientID, 300, 100, null, "");
    }
}

这是javascript代码

function confirmSave<%=this.ClientID%>(arg) {
    if (arg == true) {

        $find('<%= FindControl("txtUser").ClientID %>').set_value("");

    }
    else {
        var rdlUser = document.getElementById("<%= rdlUser.ClientID %>");
        var radioButtons = rdlUser.getElementsByTagName('input');
        radioButtons[3].checked = true;
    }
}

1 个答案:

答案 0 :(得分:1)

使用以下代码告诉我结果

function confirmSave<%=this.ClientID%>(arg) {
    if (arg == true) {
        $find('<%= FindControl("txtUser").ClientID %>').set_value("");
        return true;
    }
    else {
        var rdlUser = document.getElementById("<%= rdlUser.ClientID %>");
        var radioButtons = rdlUser.getElementsByTagName('input');
        radioButtons[3].checked = true;
        return false;
    }
}