在foreach模板的容器上引发AfterAfter火灾

| 我有一个gridview,它绑定并从UpdateFromJS调用更新后,我想斑马条纹。 该模板正在使用foreach数据绑定,但是我不想在AfterRender事件上剥离它,因为它将在每一行上调用。 我需要它在整个网格的渲染上触发。     
已邀请:
        这是一个线程,上面有关于我过去如何处理此问题的描述:https://groups.google.com/d/topic/knockoutjs/cJ2_2QaIJdA/discussion 基本上,我们添加一个绑定来进行分割。绑定将在模板绑定之后指定,例如:
<ul data-bind=\"template: { name: \'itemsTmpl\', foreach: items }, stripe: items, evenClass: \'light\', oddClass: \'dark\'\"></ul>
绑定可能看起来像这样:
//separate options in binding
ko.bindingHandlers.stripe = {
    update: function(element, valueAccessor, allBindingsAccessor) {
        var value = ko.utils.unwrapObservable(valueAccessor()); //creates the dependency
        var allBindings = allBindingsAccessor();
        var even = allBindings.evenClass;
        var odd = allBindings.oddClass;

        //update odd rows
        $(element).children(\":nth-child(odd)\").addClass(odd).removeClass(even);
        //update even rows
        $(element).children(\":nth-child(even)\").addClass(even).removeClass(odd);;
    }
}
这是具有此绑定和其他两个类似替代方法的示例:http://jsfiddle.net/rniemeyer/HJ8zJ/。一个将选项直接传递到
stripe
绑定中,另一个包装模板绑定,因此您只需指定一个绑定即可。     

要回复问题请先登录注册