[asp.net] JavaScript에서 페이지가 유효한지 확인-ASP.NET
ASPX 페이지의 양식이 JavaScript에서 유효한지 확인하는 가장 좋은 방법은 무엇입니까?
JavaScript를 사용하여 열린 사용자 정의 컨트롤의 유효성 검사를 시도 window.showModalDialog()
하고 서버 측의 ‘Page.IsValid’속성이 작동하지 않는지 확인합니다. 페이지 유효성 검사를 위해 ASP.NET 유효성 검사 컨트롤을 사용하고 있습니다.
답변
여러 ASP.NET 유효성 검사 컨트롤을 사용하는 페이지가있는 경우 다음과 유사한 코드를 사용하여 페이지 유효성을 검사합니다. 입력 제출을 호출합니다. 이 코드 샘플이 여러분을 시작할 수 있기를 바랍니다!
<input type="submit" value="Submit" onclick"ValidatePage();" />
<script type="text/javascript">
function ValidatePage() {
if (typeof (Page_ClientValidate) == 'function') {
Page_ClientValidate();
}
if (Page_IsValid) {
// do something
alert('Page is valid!');
}
else {
// do something else
alert('Page is not valid!');
}
}
</script>
답변
확인 Page.IsValid
해야 할 위치를 확인하고 있습니다 Page_IsValid
(.NET 유효성 검사기에 의해 노출되는 변수입니다) 🙂
답변
ASP.NET 유효성 검사 컨트롤은 javascript와 함께 사용할 수있는 클라이언트 측 API를 노출합니다. http://msdn.microsoft.com/en-us/library/aa479045.aspx
Page_IsValid 개체를 확인하여 유효성 검사 컨트롤이 유효하지 않은지 확인할 수 있습니다.
답변
$("input[id$=Button2]").click(function () {
var validated = Page_ClientValidate('repo');
if (validated) {
// JavaScript code.
}
});
답변
jQuery 및 유효성 검사 플러그인을 사용하여 클라이언트 측 유효성 검사를 수행 할 수 있습니다 . 이것은 html 태그와 asp.net 서버 컨트롤 모두에서 작동합니다. Phil Haack에는 기본 사항을 보여주는 좋은 샘플 프로젝트 가 있습니다.
이 SO 질문 에는이 접근 방식에 대한 심층 검토도 있습니다.
답변
페이지의 ValidationGroup
각 asp.net
유효성 검사기 컨트롤에 대한 속성을 설정 하려면 페이지에서 동일한 이름을 제공해야 ValidationGroup
합니다.
예를 들면 :
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="Required" ValidationGroup="Validate"></asp:RequiredFieldValidator>
<asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="RangeValidator" ValidationGroup="Validate"></asp:RangeValidator>
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="CustomValidator" ValidationGroup="Validate"></asp:CustomValidator>
그 후 자바 스크립트 호출에서 Page_ClientValidate("ValidationGroup")
예를 들면 :
function ValidatePage(){
if(Page_ClientValidate("Validate")){ //validate using above validation controls group
//validation return true section
}
else{
//validation return false section
}
}