我是KnockOutJs的新手,我正在实现它以及KoGrid。我设置了一个网格,从IE8中的数据填充数据,但在Chrome或FF中不起作用。
Javascript-
function FillViewModel(data) {
var vm = {
MyResults: ko.observableArray(data)
};
return vm;
}
$(function () {
$.post("/Controller/Search", function (returnedData) {
ko.applyBindings(FillViewModel(JSON.parse(returnedData)));
})
});
控制器中的方法。
[HttpPost]
public string Search()
{
List<myData> resultList;
resultList= _context.SelectAll();
JavaScriptSerializer s = new JavaScriptSerializer();
string json = s.Serialize(resultList);
return json;
}
然后我在我的视图中填充它。
<div id="myTable" data-bind="koGrid: { data: MyResults}">
</div>
正如我所说,它在IE中填充了所有200多行,但当我尝试在FF或Chrome中运行它时,它似乎都被调用了,但网格从未显示。
我有一个显示器:没有一个正在接管。归根结底,我有一些html5内容在IE8中被忽略了(因此显示:对象上没有被忽略),但Chrome和FF会识别html5元素,因此网格不会因为它上的显示而显示。这是一个愚蠢的错误。