Standard ASP.NET 웹 양식 유효성 검사기에 대한 사용자 정의 클라이언트 측 JavaScript 유효성 검사를받을 수 있습니까?

StackOverflow https://stackoverflow.com/questions/124682

문제

Standard ASP.NET 웹 양식 유효성 검사기에 대한 사용자 정의 클라이언트 측 JavaScript 유효성 검사를받을 수 있습니까?

예를 들어 ASP를 사용하십시오 : requiredfieldValidator 서버 측 코드를 단독으로 남겨 두지 만 jQuery를 사용하여 자신의 클라이언트 알림을 구현하여 필드 또는 배경색을 강조 표시하십시오.

도움이 되었습니까?

해결책

표준 CustomValidator a ClientValidationFunction 그것에 대한 속성 :

<asp:CustomValidator ControlToValidate="Text1" 
                     ClientValidationFunction="onValidate" />

<script type='text/javascript'>
function onValidate(validatorSpan, eventArgs)
 { eventArgs.IsValid = (eventArgs.Value.length > 0);
   if (!eventArgs.IsValid) highlight(validatorSpan);
 }
</script>

다른 팁

네, 그렇게했습니다. FireBug를 사용하여 dot.net js 함수를 찾은 다음 유효성 검사 기능을 가로 채웠습니다.

다음은 모든 유효성 검사기에 적용되며 순전히 클라이언트 측면입니다. 유효성 검사가 실제로 수행되는 방식이 아니라 ASP.NET 유효성 검사가 표시되는 방식을 변경하는 데 사용합니다. 원래 ASP.NET 유효성 검사를 덮어 쓰려면 $ (Document) .ready ()로 래핑해야합니다.

/**
 * Re-assigns a couple of the ASP.NET validation JS functions to
 * provide a more flexible approach
 */
function UpgradeASPNETValidation(){
    // Hi-jack the ASP.NET error display only if required
    if (typeof(Page_ClientValidate) != "undefined") {
        ValidatorUpdateDisplay = NicerValidatorUpdateDisplay;
        AspPage_ClientValidate = Page_ClientValidate;
        Page_ClientValidate = NicerPage_ClientValidate;
   }
}

/**
 * Extends the classic ASP.NET validation to add a class to the parent span when invalid
 */
function NicerValidatorUpdateDisplay(val){
    if (val.isvalid){
        // do custom removing
        $(val).fadeOut('slow');
    } else {
        // do custom show
        $(val).fadeIn('slow');
    }
}

/**
 * Extends classic ASP.NET validation to include parent element styling
 */
function NicerPage_ClientValidate(validationGroup){
    var valid = AspPage_ClientValidate(validationGroup);

    if (!valid){
        // do custom styling etc
        // I added a background colour to the parent object
        $(this).parent().addClass('invalidField');
    }
}

당신이 할 수있는 것은 유효성 검사기에 연결되어 다음과 같은 새로운 평가 방법을 할당하는 것입니다.

  <script type="text/javascript">
        rfv.evaluationfunction = validator;

        function validator(sender, e) {
            alert('rawr');
        }
    </script>

RFV는 필수 필드 유효성 검사기의 ID입니다. 유효성 검사기의 JavaScript가 등록 된 후 지정되도록 페이지 하단 에서이 작업을 수행해야합니다.

CustomFieldValidator를 사용하고 클라이언트 측 유효성 검사 속성을 할당하는 것이 훨씬 쉽습니다.

<asp:CustomValidator ControlToValidate="txtBox" ClientValidationFunction="onValidate" />

<script type='text/javascript'>
function onValidate(sender, e)
 { 
     alert('do validation');
 }
</script>

문서를 확인하십시오 여기 그리고 여기.

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