2013-02-22 1 views
2

HTML5 속성을 wireup 유효성 검사에 요소에 추가 할 수 있습니까?HTML5 속성을 사용한 녹아웃 유효 확인

나를 위해 작동하지 않는 것 그렇다면. 여분의 것을해야합니까?

http://jsfiddle.net/FcM2A/1/

vm required<input data-bind="value: num1, valueUpdate: 'afterkeydown'"/><br/> 
HTML5 required<input required="true" data-bind="value: num2, valueUpdate: 'afterkeydown'" /><br/> 
num1 isValid: <span data-bind="text: num1.isValid()"></span><br/> 
num2 isValid: <span data-bind="text: num2.isValid()"></span> 
<p data-bind="text:ko.toJSON($root)"></p> 

ko.validation.init({parseInputAttributes: true, writeInputAttributes: true}); //enable HTML5 validation, write HTML5 validation attributes to the controls 

var viewModel = { 
    num1: ko.observable("1").extend({ required: true }), 
    num2: ko.observable("2") 
}; 
ko.applyBindings(viewModel); 
+0

마크 업에서 할 수 있기를 바랬습니다. 그게 가능하지 않니? 이 문제는 https://github.com/ericmbarnard/Knockout-Validation/issues/117이 그렇게 할 수 있음을 암시하는 것으로 보입니다. – Homer

+0

** num2.isValid() **가 true 또는 fAlse를 반환 할 것으로 기대하십니까? – nav0611

+0

num1과 같음, 공백 일 때 거짓, 그렇지 않은 경우 true – Homer

답변

5

여기를보십시오 : http://jsfiddle.net/FcM2A/29/

당신이 누락 : ko.validatedObservable (뷰 모델을);

vm required<input data-bind="value: num1, valueUpdate: 'afterkeydown'"/><br/> 
HTML5 required<input required="true" data-bind="value: num2, valueUpdate: 'afterkeydown'" /><br/> 
num1 isValid: <span data-bind="text: num1.isValid()"></span><br/> 
num2 isValid: <span data-bind="text: num2.isValid()"></span> 
<p data-bind="text:ko.toJSON($root)"></p> 

ko.validation.init({parseInputAttributes: true, writeInputAttributes: true}); //enable HTML5 validation, write HTML5 validation attributes to the controls 

var viewModel = { 
    num1: ko.observable("1").extend({ required: true }), 
    num2: ko.observable("2") 
}; 
ko.validatedObservable(viewModel); 
ko.applyBindings(viewModel); 
+2

fiddle : http://jsfiddle.net/FcM2A/ 41 / –