ノックアウトが配列内のオブジェクトのプロパティを正しくマッピングしていないようです。
クロム コンソールからのこの例を参照してください。
> var viewmodel = ko.mapping.fromJS({list:[]});
undefined
> viewmodel.list().unshift({ name : ko.observable("Foo") });
1
> viewmodel.list()[0].name();
"Foo"
> var js = ko.mapping.toJS(viewmodel);
undefined
> js.list[0].name;
undefined
そのため、JavaScript オブジェクトは作成されていますが、「name」プロパティはマップされません。
どんなアイデアでも大歓迎です!