Jquery slickgrid显示对象而不是值

Jquery slickgrid显示对象而不是值,jquery,html,knockout.js,slickgrid,Jquery,Html,Knockout.js,Slickgrid,我是在举一个例子 我正在使用ajax将数据加载到可观察数组中 $.ajax({ url: "../Service/Data", type: "PUT", contentType: 'application/json', processData: false, data: JSON.stringify(Id), error: function (XMLHttpRequest, textStatus, errorThrown) { a

我是在举一个例子

我正在使用ajax将数据加载到可观察数组中

$.ajax({
    url: "../Service/Data",
    type: "PUT",
    contentType: 'application/json',
    processData: false,
    data: JSON.stringify(Id),
    error: function (XMLHttpRequest, textStatus, errorThrown) {

        alert(errorThrown);
    },
    success: function (allData) {
        var mappedData= $.map(allData, function (item) {

            return new TableData(item);
        });
        self.MyArray(mappedData);
    }
});
那么在我看来,模型就是这样做的

grid = new Slick.Grid("#myGrid", self.MyArray(), columns, options);
在我看来,我是这样做的

 <div id="myGrid" style="width:300px;height:420px;"></div>
这就是我的obs数组在实际代码中的样子

更新2 这是我的表格数据

  function TableData(data) {

        this.id= ko.observable(data.id);
        this.duration= ko.observable(data.duration);
        this.percent= ko.observable(data.percent);
    }

我从服务器获取json数据只是一个想法,您没有显示从../Service/data返回的json的实际格式,但是,您是否尝试过直接将返回的json数据写入MyArray

success: function (allData) {
    self.MyArray = allData;
}

self.MyArray返回什么?@Gaetano self.MyArray返回data@Tanner当我按照你说的方式做时,我得到了误差函数expected@Gaetano我用方法和原型得到了阵列。在这个方法中,我有我的列。我不知道它叫什么东西。这可能就是原因吗?这可能就是原因-你能告诉我MyArray的定义吗?我的意思是,如果你从ajax调用传回一个JSON数组,JSON中的属性与网格定义中的列1:1匹配,为什么不直接将它传给网格?顺便说一句,列被配置为需要一个'title'属性,并且获取data.id并将其写入一个id属性。您是否尝试过使用我上面给出的代码或任何敲除实用程序函数,如ko.mapping.fromJSallData,{},MyArray;-有关映射选项的更多信息,请参阅。我尝试使用您的代码,但得到的javascript运行时错误对象不支持此操作。slickGrid是否支持ko.observable中保存的数据?或者它是否希望daat是JSON或只是在普通的旧JS数组中?。如果是后者,只需循环所有数据并将每个项推入数组即可
success: function (allData) {
    self.MyArray = allData;
}