Ho il seguente modello di tabella che è resa attraverso l'eliminazione diretta:Knockout: righe della tabella selezionabili senza estendere il modello?
<table class="gv" data-bind="visible: products().length > 0">
<thead>
<th>Type</th>
<th>Name</th>
</thead>
<tbody data-bind="foreach: products">
<tr data-bind="click: $root.selectProduct">
<td data-bind="text: type"></td>
<td data-bind="text: name"></td>
</tr>
</tbody>
</table>
Ora voglio fare le righe cliccabili e vuole assegnare una classe CSS, se viene selezionata una riga. È possibile selezionare solo 1 riga (!) Alla volta, quindi è necessario deselezionare gli altri.
Il modo più semplice sarebbe estendere il mio modello (classe prodotto) con una proprietà selezionata ma ciò distruggerebbe il mio mapping 1: 1 con il lato server.
Come si può risolvere questo problema? Come gestiresti questo?
Per completezza di risposta, mi piacerebbe vedere definito Prodotto selezionato. – TelegramSam
@TelegramSam Un po 'tardi ma eccolo qui. – timmkrause
@jtkrause Perché la proprietà selectProduct è un osservableArray e non un oggetto solo osservabile - un oggetto - quando si consente solo una singola selezione? – Elisabeth