2011-09-01 4 views
0

현재 게시 중이며 포스트 백이 생성 될 때 (클래식 ASP 유효성 검사기 컨트롤) 여러 유효성 검사기 및 이벤트가있는 프로젝트가 있습니다.사용자 정의 메서드에서 클라이언트 측 이벤트 호출

제출 버튼을 클릭 할 때 호출되는 클라이언트 메소드가 있습니다. 그것은 다양한 서비스에 대한 아약스 호출을 만들고 일단 포스트 백이 완료되면 (지금은 클래식 document.forms[0].submit()을 통해) 완료됩니다.

여기의 문제는 내 자바 스크립트 메소드가 이벤트 대기열에서 다른 모든 자바 스크립트 호출보다 먼저 실행된다는 점입니다. 두 번째 문제는 내 메서드가 PostBack을 차단하기 위해 false를 반환한다는 것입니다 (비동기 호출을 수행하므로 모든 처리가 완료된 경우에만 PostBack이 만들어 지도록해야합니다).

유효성 검사 큐의 끝에이 메서드를 호출하거나 메서드 자체의 각 유효성 검사를 수동으로 호출 한 다음 ajax 호출을 실행하고 싶습니다. 여기

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> 
    <script type="text/javascript"> 
     Validate = function() { 
      setTimeout(function() { document.forms[0].submit() }, 2000); 

      return false; 
     } 
    </script> 


    <asp:TextBox runat="server" ID="txtSomething"></asp:TextBox> 
    <asp:Button ID="Button1" runat="server" onclick="Button1_Click" onclientclick="return Validate();" Text="Button" /> 
    <asp:RequiredFieldValidator runat="server" ID="valRequiredTruc" ControlToValidate="txtSomething">something is required</asp:RequiredFieldValidator> 
</asp:Content> 

, 유효성 검사 기능 블록 포스트 백 뭔가 아무것도 할 : 여기

문제 (일반 간단한 페이지)를 설명하는 POC이다. 2 초 후에 포스트 백이 생성되고 RequiredFieldValidator는 내용을 검증하지만 서버 측을 검증합니다. 클라이언트 쪽의 유효성 검사를하고 싶습니다.

+0

현재 수행중인 작업을 볼 수 있도록 코드를 게시 할 수 있습니까? –

+0

예제를 추가했습니다 :) – Erick

답변

관련 문제