http://stackoverflow.com/questions/7400387/knockoutjs-databind-to-a-dictionary-collection

http://stackoverflow.com/questions/7400387/knockoutjs-databind-to-a-dictionary-collection

HTML

<script src="http://knockoutjs.com/downloads/knockout-2.2.1.js"></script>
<table>
    <tbody data-bind="foreach: mapDictionaryToArray(contents())">
        <tr>
            <td> <span id="textKey" data-bind="text: $data.key"></span>

            </td>
            <td>
                <input id="textValue" type="text" data-bind="value: $data.value" />
            </td>
        </tr>
    </tbody>
</table>

JavaScript

$(function () {
    var viewModel = {
        contents: ko.observable({
            "reference": "2Z94",
                "car_id": "9861"
        }),
        mapDictionaryToArray: function (dictionary) {
            var result = [];
            for (var key in dictionary) {
                if (dictionary.hasOwnProperty(key)) {
                    result.push({
                        key: key,
                        value: dictionary[key]
                    });
                }
            }
            return result;
        }
    };
    ko.applyBindings(viewModel);
});