2010-03-24 3 views
1

제출 응답이 다시 오기를 기다리는 동안 UpdatePanel을 숨길 수있는 가장 쉬운 방법을 찾고 있습니다. - 물건 like described here 아약스 컨트롤 툴킷과 UpdatePanelAnimationExtender를 사용하여, 즉 과잉과 원인 몇 가지 문제, 둘 다 :UpdateProgress 중 UpdatePanel을 숨기기

  • 이 모두 엉망 얻고 잘못된 패널을 숨 깁니다 페이지에 숨겨진 패널의 몇이 있기 때문에. 나는 이것이 왜 일어나고 있는지 전혀 모른다.
  • 하나의 버튼 만 애니메이션을 트리거하도록 지정하는 방법을 찾을 수 없습니다. UpdatePanel에서 a를 지정했으나 무시되고 패널 안의 모든 컨트롤이 애니메이션을 트리거합니다.

간단한 자바 스크립트 솔루션이 이상적입니다. 여기 ASP.NET은 런타임에 컨트롤에 이상한 ID를 생성하는 것을 좋아합니다. 그 어떤 해결책이라도?

미리 감사드립니다.

$('#<%= elementName.ClientID %>').hide(); 

편집 : 당신이 할 수있는

답변

0

I을 사용하여 jQuery를 사용하는 것이 좋습니다. 그것은 당신을 위해 일을 쉽게 할 것입니다.

$('#<%= someASPControl.ClientID %>').hide(); 

및 보여주기 : 그래서 당신은 다음과 같은 몇 가지 jQuery를 할 수있는 "이상한 ID"문제를 해결 얻을이 ID로 요소를 잡기 위해 jQuery를 사용

$('#<%= someASPControl.ClientID %>').show(); 

다음을 수행 할 수 있습니다 당신이 원하는 것을해라. 트릭은 ".ClientID"입니다.이 ID는 .net이 보내는 ID입니다.

0

를 생성 HTML 페이지에 코드 태그를 사용하고 아이디 asp.net을 뱉어 컨트롤의 ClientID 속성을 사용하여이 예제는 jQuery를에게 BTW

0

핸들 PageRequestManager beginRequestendRequest 이벤트는 포스트 백 동안 UpdatePanel의 가시성을 제어 할 수 : 또한

var prm = Sys.WebForms.PageRequestManager.getInstance(); 
    prm.add_beginRequest(
     function (sender, args) { 
      $get("<%=someUpdatePanel.ClientID %>").style.display = "none"; 
     } 
    ); 
    prm.add_endRequest(
     function (sender, args) { 
      $get("<%=someUpdatePanel.ClientID %>").style.display = ""; 
     } 
    ); 

이 DisplayAfter이 = "0"

을 보여주는 된 UpdatePanel 숨어과의 UpdateProgress 사이의 지연을 방지하기 위해의 UpdateProgress 컨트롤을 assotiated에 추가
관련 문제