我试图在这个编辑器中集成knockout验证和twitter bootstrap:
http://jsfiddle.net/casudeo/Jbp7y/18
我想将twitter bootstrap的css用于输入错误.要做到这一点,我需要以某种方式“向上”到控制组div并为其添加“错误”类.有没有办法在不修改css文件的情况下实现这一目标?
由于dominik的评论如下:
1)单击“添加”按钮添加新项目.
2)尝试使用空值保存.
3)KO验证将捕获无效输入.但是,我还想应用“错误”css类来突出显示无效字段.
解决方法
这是一个更新的小提琴:
http://jsfiddle.net/jearles/Jbp7y/147/
HTML
<div><button data-bind="click: clickMe">Click Me!</button></div>
JS
var viewmodel = function() { var self = this; self.clickMe = function(data,event) { var target; if (event.target) target = event.target; else if (event.srcElement) target = event.srcElement; if (target.nodeType == 3) // defeat Safari bug target = target.parentNode; target.parentNode.innerHTML = "something"; } } ko.applyBindings(new viewmodel());
我改变的事情:
>将“validationElement”绑定添加到控制组div>检测到错误时,添加对“showAllMessages()”的调用>确保将errorElementClass配置设置为“error”