2010-06-16 6 views
0

UpdatePanel (비동기로드 용)에있는 MS AJAX ModalPopup Extender에 양식이 있습니다. 모든 것이 예상대로 작동합니다. 내가하려고하는 것이 있지만 그것을하는 방법을 모르는 한가지가 있습니다.ASP.NET ModalPopupExtender 메시지 업데이트

양식 제출시 클라이언트 측 유효성 검사 맨 위에 서버 측 유효성 검사가 있습니다. 내 질문은 : 어떤 경우 유효성 검사 오류 메시지를 표시하는 가장 좋은 방법은 무엇입니까? 메시지가 팝업에 비동기 적으로 기록되어 팝업이 계속 표시 될 수 있다면 이상적입니다.

이것이 가능하지 않은 경우 JavaScript 알림 상자를 사용하여 메시지를 표시하려고합니다.

모든 통찰력과 제안은 크게 감사드립니다.

+0

죄송합니다 답변을 답변으로 표시하는 방법을 결코 알지 못했습니다. 마침내 나는 그것을 알아 냈다. 나는 돌아가서 내 질문에 대답 한 사람들을 대답으로 표시했다. 감사! – John

+0

문제 없습니다. 죄송합니다. 귀하의 질문에 대한 답변을 모르겠습니다. –

+0

jacerhea, 괜찮습니다. 크레딧은 시간을 들여 다른 사람의 질문에 답하는 사람들에게 주어져야합니다. – John

답변

2

나는 ModalExtender와 UpdatePanels를 사용했기 때문에 그것은 잠시되었습니다하지만이 가능하다. 본질적으로 (머리에서 녹슬어 떨어짐) 모달 중 레이블이 visible = false로 설정되었습니다. 그런 다음 Ok 버튼을 클릭하면 논리를 처리 한 코드에서 함수를 호출했습니다. 논리가 실패하면 레이블 텍스트를 업데이트하고 visible = true를 설정합니다. 논리가 통과되면 모달의 close() 속성을 호출했습니다. 두 가지 모두에서 updatePanel.update()를 호출하여 내용을 새로 고쳐야합니다.

은 내가 찾던 정확히 무엇을 ... 내가 예를 찾을 수 있다면 어디 보자,하지만 당신이 올바른 궤도에받을 수 있습니다 답장을

If (logInstance.isNew) Then 
    result = logInstance.createNewLogEntry() 
    If (result.ToLower = "success") Then 
     Response.Redirect("default.aspx?status=1") 
    Else 
     saveErrorType.InnerHtml = result 
     ModalSaveError.Show() 
    End If 
Else 
    result = logInstance.updatePreviousLogEntry(textReasons.Value) 
    If (result.ToLower = "success") Then 
     Response.Redirect("default.aspx?status=2") 
    Else 
     saveErrorType.InnerHtml = result 
     ModalSaveError.Show() 
    End If 
End If 
1

토미, 감사합니다. 의견으로 당신에게 회신하는 대신, 나는 이것이 우리가 할 수있는 최선인지 누군가가 말해 줄 수 있기를 바랍니다. 같은 상황에 처한 사람들에게는 도움이 될 수도 있습니다.

어제 게시 한 후 나는 그 위에 몇 시간을 보냈고 해결책을 찾았습니다. 이것은 기본적으로 당신이 답안에서 설명한 것과 같은 아이디어입니다.

중요한 문제는 내가 익스텐더의 확인 버튼을 사용하지 않는다는 것이 었습니다. 대신 클릭했을 때 서버 쪽 클릭 이벤트를 발생시키는 일반 linkbutton을 사용했습니다. 이 이벤트는 유효성 검증 결과와 상관없이 팝업을 닫습니다. 그래서 내 목표는 팝업을 열어 두거나 최소한 열려있는 것처럼 보이게 한 다음 유효성 검사 오류 메시지를 추가하는 것이 었습니다.

문제에 대한 내 생각을 정리 한 후 팝업을 다시 열고 사용자가 작업중인 데이터로 양식을 채우고 유효성 검사 오류 메시지를 추가 할 수 있어야한다고 생각했습니다.

그랬습니다!

다시 한번 감사드립니다.

+0

언제든지! 내 .aspx 페이지 코드를보고 같은 작업을 수행했습니다. - 해당 모달에 OKBtnID 매개 변수가 없습니다. – Tommy