2012-09-18 80 views
7

我想在用戶在TextBox中輸入文本後清除Radiobutton列表選擇。我嘗試了下面的代碼,但它似乎並沒有工作,並沒有顯示任何錯誤。請讓我知道是否有任何建議。使用jquery清除單選按鈕列表選擇

function ClearRadioButtonList() { 
    var checkboxlistid9 = "#<%= rblLst.ClientID %>"; 
    $('.checkboxlistid9').attr('checked',false);  
} 

<telerik:RadMaskedTextBox ID="txtCode" runat="server" Mask="###-##-####" SelectionOnFocus="CaretToBeginning"> 
    <ClientEvents OnBlur="ClearRadioButtonList" /> 
</telerik:RadMaskedTextBox> 

<asp:RadioButtonList ID="rblLst" runat="server" RepeatDirection="Horizontal"> 
    <asp:ListItem Value="1">Unknown</asp:ListItem> 
    <asp:ListItem Value="2">Not Applicable</asp:ListItem> 
</asp:RadioButtonList> 

回答

11

相反的:

$('.checkboxlistid9').attr('checked',false); 

嘗試:

$('.checkboxlistid9').removeAttr('checked'); 

此外,我認爲你的jQuery選擇是錯誤的

$('.checkboxlistid9') 

我沒有看到一個類checkboxlistid9上你的asp:RadioButtonList

更改查詢選擇到:

$("table[id$=rblLst] input:radio:checked").removeAttr("checked"); 

或者

$("table[id$=rblLst] input:radio").each(function (i, x){ 
    if($(x).is(":checked")){ 
     $(x).removeAttr("checked"); 
    } 
}); 
+0

謝謝。現在正在工作。我將代碼更改爲$(「table [id $ = rblLst] input:radio:checked」)。removeAttr(「checked」); – nav100

0
$('.checkboxlistid9').removeAttr('checked'); 
1

您應該使用prop()。此外,each()迭代:

$('.checkboxlistid9').each(function (index, elem){ 
    $(elem).prop('checked',false); 
}) 
2

單選按鈕將是代表RadioButtonList元素的後代,你可以用#<%= rblLst.ClientID %> input[type=radio]選擇它們,並使用.prop()刪除選中的物業。

function ClearRadioButtonList() { 
    $("#<%= rblLst.ClientID %> input[type=radio]").prop('checked',false);  
}