2011-04-29 4 views
0

나는 웹에서 내가 무엇을 놓쳤는지를 배우기 위해 검색했지만, 나는 그것을 얻을 수없는 것 같습니다. 난 asp.net 4.0 (webforms 분명히), 마스터 페이지 및 jQuery 유효성 검사를 사용하고 있습니다. 누군가 내가 엉망이 된 것을 말해 줄 수 있습니까? 내 경우다른 마스터 페이지 jQuery 유효성 확인 문제/질문

을 나는 검증을 필요로하는 분야에 대해 아무것도 알 수 없습니다, 그래서 난 그냥 클래스 = "필요한 이메일"로 필드를 가지고있는 기본 방법을 사용하고 싶습니다

필드와 제출 버튼은 ASP.NET 컨트롤이 아닌 일반 HTML입니다 (자세한 내용). 페이지가 렌더링 될 때 양식은 "form1"이 아닌 다른 사람들이 참조한 것처럼 aspnetForm이 아닙니다. 제출 버튼을 클릭하면 자바 스크립트가 실행되지 않습니다. 그냥 다시 게시됩니다. 경고 상자를 팝업하지 않습니다.

정확히 어떤 부분을 참조하지 않습니까?

 $(document).ready(function() { 
     alert('in js'); 
     document.getElementById('form1').validate({ 
      alert('in val'); 
     }); 

페이지 내용 : 당신은 올바르게 기능과 중괄호를 닫가

<fieldset> 
    <legend>A simple comment form with submit validation and default messages</legend> 
    <p> 
    <label for="cname">Name</label> 
    <em>*</em><input id="cname" name="name" size="25" class="required" minlength="2" /> 
    </p> 
    <p> 
    <label for="cemail">E-Mail</label> 
    <em>*</em><input id="cemail" name="email" size="25" class="required email" /> 
    </p> 
    <p> 
    <label for="curl">URL</label> 
    <em> </em><input id="curl" name="url" size="25" class="url" value="" /> 
    </p> 
    <p> 
    <label for="ccomment">Your comment</label> 
    <em>*</em><textarea id="ccomment" name="comment" cols="22" class="required"></textarea> 
    </p> 
    <p> 
    <input name="btnsubmit" id="btnsubmit" class="submit" type="submit" value="Submit"/> 
    </p> 
</fieldset> 

답변

1

Asp.net 만 페이지에 하나의 양식을 배치하는 것입니다, 그래서 ID를 알지 못하고 그것을 찾기 위해 $ ("양식")을 사용하는 대신이를보십시오. 또한 유효성 검사 옵션을 사용하면 경고가 표시되지 않지만 아래에서 수행 한대로 올바른 처리기로 옮길 수 있습니다. 희망이 도움이 ...

$(function() { 
    $("form").validate({ 
     submitHandler: function() { 
      alert("submiting..."); 
      return false; 
     }, 
     invalidHandler: function() { 
      alert("invalid form"); 
      return false; 
     } 
    }); 
}); 
3

여기 내 간단한 자바 스크립트입니다. 더 큰 문제는 네이티브 DOM 객체가 아니라 jQuery 객체를 참조해야한다는 것입니다. 코드는해야한다 :

$(document).ready(function(){ 
    alert('in js'); 
    $('#form1').validate({ 
     alert('in val'); 
    }); 
}); 

귀하의 준비 기능은 간단하게하기 위해 $(function(){...}); 단축 할 수있다.

0

원시 JS를 사용하여 양식을 참조하며 .validate 플러그인에는 jQuery 객체가 필요합니다.

$(document).ready(function() { 
    alert('in js'); 
    $('form').validate({ 
    alert('in val'); 
    }); 
1

유효성 검사 플러그인에 jquery 개체를 전달해야합니다. 플러그인을 확인하기 위해 DOM 객체를 전달하려고합니다. 분명히 작동하지 않습니다.

document.getElementById('form1')$('#form1')으로 바꿉니다.

이제는 원활하게 유출 될 것입니다.