에서 작동하지 않습니다 : http://codepen.io/spacejaguar/pen/KrvqNW양식 초기화 및 필드 초기화 이벤트가 여기에 간단한 예제 parsley.js
HTML :
<form data-parsley-validate>
<label for="name">Name:</label>
<input type="text" name="name" required>
<br>
<input type="submit" value="validate">
<p><small>This is a simplistic example, good to start from when giving examples of use of Parsley</small></p>
</form>
와 JS가
$(function() {
$('form').parsley()
.on('form:init', function() {
console.log('Form init', arguments);
})
.on('field:init', function() {
console.log('Field init', arguments);
})
.on('form:validate', function() {
console.log('Form validate', arguments);
})
.on('form:submit', function() {
return false; // Don't submit form for this demo
});
});
그것은 그 양식을 보인다 : init 또는 필드 : init 콜백 함수는 전혀 호출되지 않으며, 다른 하나는 정상적으로 작동합니다. 내가 뭘 잘못 했니? 아니면 버그일까요?
[편집]
소스 코드를 살펴본 결과 일부 디버깅 작업을 수행했지만, 리스너가 연결되기 전에 init 이벤트가 트리거 된 것으로 보입니다. 파슬리 인스턴스를 생성하는 것은 모두 같습니다
- 라고 $ .fn.parsley
- 새로운 ParsleyFactory가 생성되고, 초기화 FN
--- ParsleyFactory.prototype.init의 유효성을 검사 설정 등을 호출
FN 바인딩 호출 ---- ParsleyFactory.prototype.bind이
이 ----- 새로운 ParsleyForm가 호출 (ParsleyForm, ParsleyField 또는 ParsleyMultiple)을 작성하는 생성자 결정하고 인스턴스를 반환
---- ParsleyFactory.prototype.bind 는 초기화를 트리거 이벤트 및인스턴스를 반환합니다. 는 --- ParsleyFactory.prototype.init는 예를
를 반환 - ParsleyFactory 생성자는 예를 예를 - CSTE 연구진 (반환 .fn.parsley
- $ 반환 '필드 : 초기화'기능을() {... })가 묶여 있습니다
흥미 롭. 그래서'$ .Parsley.on ('form : init')'은 작동 할 것이지만 그게 이벤트를 잡는 유일한 방법입니다. 실제로 초기화 직후에 이벤트를 트리거하는 것이 가장 좋습니다 ('setTimeout' 사용). PR을 쓰는 느낌? –
가까운 장래에 그렇게 할 수 없지만 나중에 시도해 보겠습니다. – RamboBambo