2010-01-20 5 views
0

인사말,달력 선택

오늘 아침 뇌 방귀를 낳게 될 수도 있지만 나는 ASP .NET 아약스 업데이트 패널 내부에서 발생하는 작업의 결론에 약간의 자바 스크립트를 실행하는 방법이 필요합니다. 이것이 어떻게 성취 될 수 있는가?

감사합니다,

제이슨 응답에 따라 업데이트

: 모두 초기 답변은 내가 요구 한 것을 주어진 정확로 나는 완전히 밝혀지지 않았다. 제 경우에는 UpdatePanel 내의 컨트롤을위한 특정 이벤트가 실행될 때 JS가 실행되기를 원합니다. 혼란스러워서 죄송합니다.

답변

2
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequest); 

function endRequest(sender, args) { 
    // Executed when ajax request finishes, you could check the sender variable 
    // in order to identify which update panel fired the request 
} 
+0

광산을 넘어선 멋진 편집 P. 변수에 대한 좋은 아이디어를 위해 그것을 upvote거야. –

1

여기에 좋은 기사가 있습니다. 난 당신이 찾고있는이 정확히 생각 :

http://blog.jeromeparadis.com/archive/2007/03/01/1501.aspx

만주의해야 할 점은 여러 updatepanels이있는 경우는 하나의 왕복을 완료하는 관계없이 발생 있도록이 샘플은 어떤 아약스 콜백에 대해 작동한다는 것입니다,

0

해답은 KevinP와 Darin에게 감사드립니다. 나는 실제로 스크립트 관리자에서 인스턴스 요청 처리기에 대해 잊어 버렸습니다. Unfortunetly, 내 경우에는 사람이 달력 컨트롤에서 탐색 할 때마다 end_request를 실행합니다. 나는 모든 요구 사항에 대해 명확하지 않았기 때문에 책임을진다. 나는 그들의 대답 둘 다 upvoted있다. 여기에 내 마지막 해결책이있다.

(이 VB에 용서) 보호 서브 mainCalendar_SelectionChanged (개체로 ByVal의 송신자는 EventArgs로서 ByVal로의 EV) 어둡게 DTSTART % 시간 = mainCalendar.SelectedDates (0) 어둡게 DTEND 날짜 시간 = mainCalendar.SelectedDates로 (6) 이러한 맥락에서

Dim alertString As String = _ 
     String.Format(
      "alert('{0}');", dtStart.ToString("d") + " - " + dtEnd.ToString("d") 
     ) 
    scriptManager.RegisterStartupScript(upCalendar, GetType(String), _ 
     "alert", alertString, True) 
End Sub 

경고가 오직 사용자가 매월 변경 또는 뭔가 다른 탐색과 관련된 작업을 수행하지 않을 경우, 일정에 주의 선택에 표시됩니다에게.

답장 모두에게 도움을 주신 데 대해 감사합니다.