簡體   English   中英

RadioButtonList SelectedIndexChanged並非每次都觸發

[英]RadioButtonList SelectedIndexChanged not firing everytime

我在asp.net UserControl中有一個RadioButtonList控件。 它具有2個單選按鈕“ Leave”和“ Available”。 單擊“請假”時,我將顯示來自SelectedIndexChanged事件的警報為“您確定要請假嗎?” 單擊確定和取消按鈕。 單擊“取消”后,它將自動選擇“可用”。 到目前為止,這很好。

步驟1:用戶單擊“取消”(Cancel)恢復到“可用”(Available)

步驟2:當用戶再次單擊“離開”時,它將不會顯示來自RadioButton的SelectedIndexChanged的警報。

第3步:現在它將再次起作用。

為此,我已為該UserControl啟用EnableViewState =“ true”。 但是仍然無法第二次使用。

下面是服務器端的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;
    }
}

使用以下代碼,讓我知道結果

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;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM