유효성 확인 작업을하고 있으며보기 모달에 knockout.js (및 durandal.js)를 사용하고 있습니다.knockout.js 유효성 검사 입력란 강조 표시
제출 버튼을 클릭하면 입력란이 비어있을 때 텍스트 테두리를 빨간색으로 만들고 싶습니다.
사용자가 텍스트 상자에 입력을 시작하면 테두리 색 빨간색이 제거되어야합니다.
코드는 여기에 있습니다 : 내가 무슨 짓을 http://jsfiddle.net/LvHUD/1/
입니다 : 다음은
<input type="text" data-bind="value: username, css:{'error':showErrors}" />
:
는<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="Scripts/knockout.debug.js"></script>
<script src="Scripts/knockout.js"></script>
<script src="Scripts/knockout.validation.debug.js"></script>
<script src="Scripts/knockout.validation.js"></script>
</head>
<body>
<input type="text" data-bind='value: username' />
<br />
<button data-bind="click: submit">Submit</button>
<div data-bind="visible: showErrors, text: errors" />
<script>
function ViewModel() {
var self = this;
self.username = ko.observable().extend({
required: true
});
self.showErrors = ko.observable(false);
self.submit = function() {
self.showErrors(true);
if (self.isValid()) {
// save data here
}
}
self.errors = ko.validation.group(self);
}
ko.validation.init({
registerExtenders: true,
messagesOnModified: true,
insertMessages: false
});
ko.applyBindings(new ViewModel());
</script>
</body>
</html>
흠, 여기에 어떤 Durandal을 확인할 수 없습니다. 태그를 제거하고 질문을 업데이트 할 것을 제안 할 수 있습니까? – RainerAtSpirit