문제

소개하고 있습니다 제이쿼리 기존 ASP.NET 응용 프로그램에 추가하고 플러그인 확인 JQuery가 클라이언트 측 유효성 검사를 수행하도록 합니다(asp.net 유효성 검사기를 사용하고 싶지 않습니다).

asp:Button 컨트롤을 사용하면 모든 것이 잘 작동합니다.페이지가 제출되기 전에 클라이언트 측 유효성 검사가 트리거됩니다.

그러나 링크버튼 그리고 이미지버튼 양식을 먼저 확인하지 않고 페이지가 제출되도록 제어합니다.

이는 유효성 검사가 다음과 같이 렌더링되는 버튼과 함께 작동하기 때문입니다. 입력 유형="제출" ImageButton이 다음과 같이 렌더링되는 동안 입력 유형="이미지".

다른 사람이 이것을 경험 했습니까?

해결 방법에 대한 아이디어와 정보를 제공해 주셔서 감사합니다.

업데이트:

귀하의 답변은 문제를 파악하는 데 도움이 되었습니다.JQuery용 유효성 검사 플러그인에 버그가 있는 것으로 나타났습니다.우리는 숨겨진 입력 필드의 유효성 검사를 피하기 위해 패치를 사용했습니다. parent().filter(":숨김").이 기능은 에서 제대로 작동하지 않습니다. 제이쿼리 1.3.2.우리는 그것을 .is(":표시됨").이제 asp.net ImageButton이 기본적으로 작동합니다!

업데이트2:

LinkButton이 여전히 작동하지 않았습니다.간단한 해결책은 양식이 유효하지 않은 경우 false를 반환하는 클릭 함수를 추가하는 것입니다.

$("#<%= tb.ClientID %>").click(function() {
            return $('form').valid();
        })
도움이 되었습니까?

해결책

유효성 검사가 수행된 후 Javascript를 사용하여 포스트백이 실행되도록 할 수 있으므로 첫 번째 제안은 여전히 ​​작동할 수 있습니다.

자바스크립트는 다음과 같습니다:

__doPostBack('<%= YourImageControl.UniqueID %>','');

두 번째 빈 매개변수는 인수를 전달하는 데 사용될 수 있습니다.

다른 팁

도움이 될지는 모르겠지만 한번 시도해 보세요...

http://docs.jquery.com/Plugins/Validation/validate#options

$("input[type=image]").click(function() {
   $($(this).parents(form)).validate();
});

"양식"을 좀 더 구체적인 것으로 대체해야 할 수도 있지만 페이지에 모든 것이 어떻게 배치되어 있는지 알지 못한 채 가능한 한 정확하게 작성하려고 노력했습니다.도움이 되셨다면 답글을 남겨주세요!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top