2017-04-26 3 views
0

이름이 필요한 간단한 유효성 검사를 만들려고합니다 (나중에 유효성 검사를 추가 할 예정입니다). 앱에 엠버 앱이 있고 jquery validation을 사용하고 싶습니다.emberjs에서 jquery-validation을 올바르게 사용하는 방법은 무엇입니까?

기본 유효성 검사를 실행하는 데 문제가 있습니다. 상징은 입력에 required을 인식하지 못하기 때문에,

//app/components/sales-form/template.emblem 

form id="salesForm" 
    ... 
    .form-group 
    label Some Sales Info 
     = input type="text" disabled=false value=salesNumber placeholder="Sales Number" class="form-control" required 

    button{action: 'clickNSave'} 
    ... 

이 나에게 빌드 오류를 제공합니다 :

구성 요소 내부
//index.html 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script> 

... 
//body and such// 
... 

<script> 
    $('#salesForm').validate(); 
</script> 

</body> 

은 판매 형태의 말 :이 내가 가진 것입니다.

엠블럼을 템플릿으로 사용하는 엠버 응용 프로그램에서 jquery-validation을 사용하여 간단한 유효성 검사를 만들려면 어떻게해야합니까?

기타 질문, index.html의 유효성 확인이 유효합니다. 유효성 검사를 실행하려면 바디 태그를 닫으십시오. 그렇지 않은 경우 $('#someForm').validate();을 삽입하는 가장 좋은 방법은 어디입니까?

답변

0

엠블럼이 입력에 필수 항목을 인식하지 못하기 때문에 빌드 오류가 발생합니다.

What about required="required" or required=required? 그렇지 않으면 Ember.js를 사용하여이 속성을 어떻게 추가해야하는지 잘 모릅니다.

... 유효성 검사를 실행하려면 ...

당신은 검증을 "실행"되지 않습니다. 양식에 jQuery Validate 플러그인을 "초기화" 있습니다.

... 맨 마지막에 바디 태그를 닫기 전에? 그렇지 않은 경우 $('#someForm').validate();을 삽입하는 가장 좋은 방법은 어디입니까?

$('#someForm').validate() 단순히 a DOM ready handler 내에서 호출되는 그것만큼이 후 을라고 당신이 jQuery를하고 플러그인을 포함, 다른 곳 상단, 하단, 또는 경우 문제가되지 않습니다. 당신이없이 head에 DOM 준비 처리기를 넣어 경우

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script> 

.... 

<script> 
    $(document).ready(function() { // ensures DOM is fully constructed 
     $('#someForm').validate(); // initialize the plugin on #someForm 
    }); 
</script> 

그렇지 않은 경우는 form 아직 DOM 렌더링되지 않고 .validate()로 호출이 실패합니다.

엠블럼을 템플릿으로 사용하는 엠버 응용 프로그램에서 jquery-validation을 사용하여 간단한 유효성 검사를 어떻게 만들 수 있습니까?

name 속성을 input 요소에 할당 한 위치가 표시되지 않습니다. jQuery Validate 플러그인 mandates that any form element being validated must contain a unique name attribute.

= input type="text" name="sales_number" required="required" disabled=false value=salesNumber placeholder="Sales Number" class="form-control" 

이 플러그인의 올바른 사용법에 대한 자세한 내용은 the documentation뿐만 아니라 the SO wiki page를 참조하십시오.