2010-03-31 2 views
1

여러 소스의 코드 예제로 사용자 지정 날짜 선택 도구를 만들려고합니다.이벤트시 ASP.NET 컨트롤 표시

JavaScript 또는 ASP.NET 코드로 수행되는 버튼을 사용자가 클릭 할 때 ASP.NET 컨트롤을 표시하거나 숨기는 코드가 있습니까? 표시/숨기기로, 페이지 내에서 팝업 창이 아님을 의미합니다.

간단한 예를 제공해주십시오. (ASP.NET, VB 예제가 C#보다 선호되는 경우)

답변

1

대답은 다릅니다. 날짜 선택 도구 표시/숨기기를 사용하여 다시 게시 및 서버의 일부 코드를 트리거하거나 클라이언트에서 순전히 작동하게할까요?

당신은, 다음, 클라이언트에서 순수하게 행동하여 버튼의 마크 업을 수정하려면 : Button 컨트롤 :

<asp:Button runat="server" ID="myButton" OnClientClick="ShowHideCalendar()" Text="myButton" /> 
<script language="javascript" type="text/javascript"> 
var calendarVisible = false; 
function ShowHideCalendar() 
{ 
    if (calendarVisible) 
    { 
    // Code to *SHOW* calendar here 
    // Show the DIV it's contained in, pop the window with it in, etc.. 
    } 
    else 
    { 
    // Code to *HIDE* the calendar here 
    } 
} 
</script> 

키 비트가 ASP의 "OnClientClick"속성입니다.

0

전체 페이지를 새로 고치는 전체 포스트 백을 사용하는 대신 비동기 적으로 수행하는 것이 가장 좋습니다.

  1. 업데이트합니다 제어가 위치에 UpdatePanel : 당신은 두 가지 옵션이 있다는 것을 의미 . 따라서 은 UpdatePanel의 내용을 으로 다시 렌더링하는 이점을 제공합니다.
  2. clientside 스크립트를 사용하여 컨트롤을 토글합니다. 콜백을 수행해야합니다. 즉, 표시 코드 을 으로 토글하여 코드가 표시되는 웹 페이지와 동일한 상태로 전환되도록 코드 숨김을 알려줍니다.

두 번째 것이 좋습니다.

관련 문제