2011-08-08 9 views
8

ASP.net RadioButtonList (C# 코드 숨김)에서 선택된 인덱스의 변경을 처리하는 가장 좋은 방법을 찾고 있습니다. 3 가지 목록 항목이 있습니다. 첫 번째로는 페이지에 숨겨진 ASP : 텍스트 상자를 표시하고 나머지 두 가지는 텍스트 상자를 숨길 것입니다. RadioButtonList OnSelectedIndexChanged

//asp.net side 
<asp:RadioButtonList ID="_indicatorAckType" runat="server" RepeatDirection="Horizontal" 
       enabled="true" OnSelectedIndexChanged="onAckTypeChanged"> 
    <asp:ListItem Text="None" /> 
    <asp:ListItem Text="SHOW" /> 
    <asp:ListItem Text="HIDE" /> 
</asp:RadioButtonList> 

//code behind 
protected void onAckTypeChanged(object sender, EventArgs e) 
{ 
    if (_indicatorAckType.SelectedItem.Text == "SHOW") 
     _myTextboxID.Visible = true; 
    else 
     _myTextboxID.Visible = false; 
} 

나는 처음에 온 클릭 이벤트 핸들러를 사용하여 시도,하지만 난을 ListItem의 라디오 버튼 항목과 온 클릭 이벤트를 사용할 수 없다는 것을 들었다. 여기서 내가 뭘 잘못하고 있니? 이것은 오류를 던지거나 눈에 띄게 명백한 문제가있는 것은 아닙니다. 나는 onSelectedIndexChanged가 텍스트 상자를 보여주는 것 외에는 아무 것도하지 않는 것을 시도했다.

도움을 주시면 감사하겠습니다. 모두에게 감사드립니다.

답변

21

RadioButtonList에서 AutoPostBack 특성을 true로 설정하십시오.

+0

야. 고체! 위대한 질문과 간결한 대답. 감사. – trgraglia

+0

단순한 양식에 적합하지만 다양한 다른 컨트롤과 함께 사용하는 경우 AutoPostBack은 렌더링 루틴이있을 경우이를 다시 처리하여 다른 문제를 일으 킵니다. AutoPostBack만큼이나 간단하지는 않습니다! – Fandango68

+0

thnk u james .u 내 많은 시간을 절약했습니다. –

1

이 정보가 도움이 될지 확인하십시오. 라디오 버튼에서 활성화 된 경우 autopostback을 끄는 것이 클라이언트 측에서 jquery를 사용하여 수행하는 것이 좋습니다.

예 :

Using jQuery, hide a textbox if a radio button is selected

+0

일부 자바 스크립트에서 jQuery를 사용하여 상자를 표시하거나 숨기려고했지만 자바 스크립트가 제대로 코드를 처리하지 않는 것 같습니다. 샘플로 편집 해 주시겠습니까? – ImGreg

1

당신이 화면을 새로 아무것도 할 필요합니까? 다시 게시와의 관계에서 이러한 이벤트가 시작되는 순서를 확신합니까?

관련 문제