Javascript 在KoGrid中使用knockoutjs不适用于Chrome或FF,但适用于IE8
我是KnockOutJs的新手,我正在实现它以及KoGrid。我已经建立了一个网格,用于填充IE8中的数据,但在Chrome或FF中不起作用 Javascript-Javascript 在KoGrid中使用knockoutjs不适用于Chrome或FF,但适用于IE8,javascript,knockout.js,Javascript,Knockout.js,我是KnockOutJs的新手,我正在实现它以及KoGrid。我已经建立了一个网格,用于填充IE8中的数据,但在Chrome或FF中不起作用 Javascript- function FillViewModel(data) { var vm = { MyResults: ko.observableArray(data) }; return vm; } $(function () { $.post("/Controller/Search", fu
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;
}
[HttpPost]
公共字符串搜索()
{
列表结果列表;
结果列表=_context.SelectAll();
JavaScriptSerializer s=新的JavaScriptSerializer();
字符串json=s.Serialize(resultList);
返回json;
}
然后我在自己的观点中对其进行填充
<div id="myTable" data-bind="koGrid: { data: MyResults}">
</div>
正如我所说,它在IE中填充了所有200多行,但当我尝试在FF或Chrome中运行它时,它似乎都被调用了,但网格从未显示出来。我有一个显示:没有一个正在接管。归根结底,我有一些HTML5内容在IE8中被忽略了(因此显示:对象上没有被忽略)"但是Chrome和FF会识别html5元素,因此网格不会显示,因为它上面有显示。愚蠢的错误。你能显示页面中包含koGrid和knockout的部分吗?谢谢你的评论。但是我有一个显示:没有一个正在接管。原因是我有一些被忽略的html5内容在IE8中(因此显示:对象上没有被忽略),但Chrome和FF会识别html5元素,因此网格不会显示,因为它上有显示。愚蠢的错误。