2013-04-08 49 views
0

嘿傢伙我有一個頁面有多個單選按鈕列表和每個列表的清除選擇按鈕清除列表,如果按下。問題是我現在的代碼,如果我按下清除選擇按鈕清除頁面上的所有單選按鈕列表。如何修改我的代碼以清除我想要的單選按鈕列表。這是代碼的一小部分。radiobuttonlist

<asp:RadioButtonList ID="rdoQuestionChoice" runat="server" Visible="false" CssClass="Aligntext" OnSelectedIndexChanged="ddlChoiceList_SelectedIndexChanged" /> 

<asp:Button ID="clearRdoQuestionChoice" runat="server" Visible="false" Text="Clear Selection" OnClientClick="clearRdoQuestionChoice_ClearRadioList(); return false;" /> 

<script language="javascript" type="text/javascript"> 
    function clearRdoQuestionChoice_ClearRadioList() { 
     $("table[id$=rdoQuestionChoice] input:radio").each(function (i, x) { 
      if ($(x).is(":checked")) { 
       $(x).removeAttr("checked"); 
      } 
     }); 
    } 
</script> 
+0

請那是我的.cs類基於某些變量的使用,使在RadioButtonList可見的代碼(現在它是隱藏的) – Dom 2013-04-08 15:23:21

+0

。我基本上多次循環創建具有相同ID的各種單選按鈕列表 – brasewel 2013-04-08 17:00:45

回答

0

您是否嘗試過僅更改單選按鈕列表的選擇索引?這樣的 - >

C#(測試)

rdoQuestionChoice.SelectedIndex = -1

使用Javascript(沒有測試)

window.addEvent('domready', function() { 
     $("rdoQuestionChoice").checked = false; 
}); 

或者,你可以在這裏看到更多的信息和其他JavaScript功能:http://www.tek-tips.com/viewthread.cfm?qid=1436752

+0

這將如何區分單選按鈕列表?頁面上的所有單選按鈕列表都具有相同的ID – brasewel 2013-04-08 15:18:32

0

我能解決這個問題。

以我底層的.cs I類添加以下代碼行在Page_Load(對象發件人,EventArgs的)函數

clearRdoQuestionChoice.OnClientClick = "clearRdoQuestionChoice_ClearRadioList('" + rdoQuestionChoice.ClientID + "')"; 

以我本人取得javascript函數以下更改

function clearRdoQuestionChoice_ClearRadioList(radioButtonListID) { 
    var elementRef = document.getElementById(radioButtonListID); 
    var inputElementArray = elementRef.getElementsByTagName('input'); 

    for (var i = 0; i < inputElementArray.length; i++) { 
     var inputElement = inputElementArray[i]; 
     inputElement.checked = false; 
    } 
    return false; 
} 

我將.aspx類更改爲以下內容。我基本解除,從ASP中的OnClientClick屬性:按鈕

<asp:RadioButtonList ID="rdoQuestionChoice" runat="server" Visible="false" CssClass="Aligntext"       OnSelectedIndexChanged="ddlChoiceList_SelectedIndexChanged" /> 
<asp:Button ID="clearRdoQuestionChoice" runat="server" Visible="false" Text="Clear Selection" />