ビュー モデルにオブジェクトのコレクションがあります。コントロールに値をバインドするときに問題が発生していますselect
。値は JS オブジェクトであり、プリミティブ型ではありません。バインドされたコレクションに複数のオブジェクトがあり、select
コントロールを変更すると、他のすべてのオブジェクトの値が新しく選択された値に更新されます。すべての値がバインディング内の同じインスタンスにバインドされているようforeach
です。エラーは、単に既存の行を編集するときではなく、新しい行が挿入されたときにのみ発生するようです。
私は多くの複雑さを取り除き、JSFiddle の問題を示す例を用意しました。
http://jsfiddle.net/zero21xxx/5vgDy/
エラーを表示する手順
- 行1のドロップダウンから決済タイプを選択します
- 右側の新しいドロップダウンから「2」を選択します。
- 行 2 のドロップダウンから決済タイプを選択します。
- 行 1 と行 2 の両方が、選択ボックスで「1 つ」に設定されます。
ある行を変更しても、他の行には影響しないと思います。