2014-07-23 2 views
1

여기에서 내가 뭘 잘못하고 있는지 잘 모르겠습니다. OnSelectedIndexChanged 이벤트를 작동 시키려고하지만 ASP 형식 컨트롤을 사용하지 않고이를 수행하려고합니다. OnServerClick가 OnSelectedIndexChanged도 OnServerClick도하지만 <a> 요소의 작동 아래의 예에서 OnSelectedIndexChanged 작동하지 않습니다.

<select>을 위해 일 것 같다.

<%@ Page Language="VB" AutoEventWireup="True" %> 
<!DOCTYPE html> 
<html> 
<head> 
<script runat="server"> 

     Sub HtmlAnchor_Click_1(sender As Object, e As EventArgs) 
     Message.InnerHtml = "this doesn't work" 
     End Sub 

     Sub HtmlAnchor_Click_2(sender As Object, e As EventArgs) 
     Message.InnerHtml = "this works" 
     End Sub 

</script> 
</head> 
<body> 

    <form id="form1" runat="server"> 

     <select id="AnchorSelect" name="select1" OnSelectedIndexChanged="HtmlAnchor_Click_1" runat="server"> 
       <option value="volvo">Volvo</option> 
       <option value="saab">Saab</option> 
       <option value="mercedes">Mercedes</option> 
       <option value="audi">Audi</option> 
     </select> 
     <br /><br /> 
      <a id="AnchorButton" onserverclick="HtmlAnchor_Click_2" runat="server">Click Here</a> 
     <br /><br /> 

     <span id="Message" runat="server"/> 
</form> 
</body> 
</html> 

모든 아이디어 나 해결책이 인정 될 것입니다. 건배.

+2

의 AutoPostBack을 = –

+2

은 또한, 왜 사용하지 말아 사실''대신? –

답변

1

select는 HTML 입력하고 OnSelectedIndexChanged가 호출되는 자바 스크립트 함수가 될 것입니다.

사용 <asp:DropDownList>autopostback=true을 설정합니다. 그런 다음 코드를 사용하도록 OnSelectedIndexChanged을 코드 숨김에 넣습니다.

체크 아웃이 예 : DropDownList's SelectedIndexChanged event not firing

+0

그게 효과가 있지만 다른 드롭 다운리스트가 있거나 페이지에서'page_load'에 채워지는 페이지를 선택하면'OnSelectedIndexChanged'가 실행될 때 선택이 재설정됩니다. 첫 번째 게시물에서 내 상황을 설명하지 않는 것에 대한 사과 – Mike

+0

정말 'controlName1_OnSelectedIndexChanged'와 같아야합니다. 각 컨트롤은 선택한 인덱스가 변경 될 때마다 자체 이벤트가 필요합니다. 또한'page_load'에 다시 채우기 전에 포스트 백인지 확인해야합니다. –

+0

지금 정렬 했으므로, 올바른 방향으로 나를 가리키게 해줘서 고맙습니다. – Mike

관련 문제