2013-01-11 5 views
0

C'est un bloc de code que j'utilise pour générer des cellules dans chaque colonne. Est-il possible de restreindre cette boucle pour les deux premières itérations.Restriction des itérations de pour chaque boucle

<tr data-bind="foreach: activeColumns"> 
    <td> 
     <select data-bind = "options:$root.weightageType" style="font-size: 12px;"> 
     </select>  
    </td> 
</tr> 

ici est un tableau Actif d'observable représentant toutes les colonnes de mes table.I veulent ajouter un menu déroulant dans chaque colonne, sauf deux premiers.

+0

Qu'est-ce que votre modèle de vue ressemble? Il est probablement plus facile, plus propre et plus MVVM de simplement ajouter une propriété dans votre modèle de vue qui expose juste les deux premiers éléments. Vous pourriez même utiliser une propriété calculée pour cela. –

Répondre

0

Vous pouvez obtenir le index de la boucle en utilisant $ index, vous pouvez l'utiliser avec un if pour lier uniquement les deux premiers. Sinon, vous pouvez utiliser un custom binding et avoir votre logique dans cela.

Juste pour clarifier, vous pouvez créer une liaison personnalisée et passer l'index en utilisant:

data-bind="text: Name, nameOfYourCustomBindingMethod: $index 

puis dans votre classeur personnalisé, vous pouvez obtenir l'index à l'aide:

ko.utils.unwrapObservable(valueAccessor()) 
Questions connexes