2013-04-08 5 views
0

Эй, ребята, у меня есть страница с несколькими радиоблоктонами и четкая кнопка выбора для каждого списка, чтобы удалить список, если он нажат. Проблема с моим текущим кодом, если я нажимаю кнопку очистки, он очищает все радиокниги на странице. Как мне изменить свой код, чтобы просто очистить список radioobuttonlist, который я хочу. Вот фрагмент кода.radioobuttonlist

<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

Укажите код, который вы используете, чтобы сделать видимым RadioButtonList (сейчас это скрытый) – Dom

+0

Это в моем классе .cs на основе определенных переменных. Я в основном цикл через несколько раз, чтобы создать различные radobuttonlists с тем же ID – brasewel

ответ

0

Вы пробовали просто изменить только индекс выбора списка переключателей? Как это ->

C# (проверено)

rdoQuestionChoice.SelectedIndex = -1

Javascript (не проверено)

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

Или вы можете увидеть здесь для получения дополнительной информации и других яваскрипта функций: http://www.tek-tips.com/viewthread.cfm?qid=1436752

+0

Как это будет иметь возможность различать радиообъективы? Все радиообъективы на странице имеют одинаковый идентификатор – brasewel

0

Я смог решить это.

В моей базового класса .cs я добавил следующую строку кода в Page_Load (объект отправителя, EventArgs е) функция

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

В моих Java-функции я сделал следующие изменения

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 на следующее. Я в основном удаляется атрибут 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" /> 
Смежные вопросы