使用 KNOCKOUTJS 绑定数据表时无法处理绑定



我正在尝试将jquery数据表与knockoutjs一起使用。 数据表网格呈现正常,但在浏览器窗口的控制台中看到错误。有人可以帮我解决这个问题,如果我做错了什么,可以纠正我吗?

http://jsfiddle.net/5hwg1p36/

**Error:**
knockout-min.js:73 Uncaught TypeError: Unable to process binding "dataTable: function(){return { deferRender:true,scrollY:'200',scrollX:true,paging:true,select:Select,dom:'t,p',columns:Columns,columnDefs:ColumnDefinitions,data:Data,pagingType:'full'} }"
Message: Cannot read property 'replace' of null
at Jb (jquery.dataTables.min.js:68)
at jQuery.fn.init.<anonymous> (jquery.dataTables.min.js:91)
at jquery.dataTables.min.js:76
at Function.map (jquery-3.3.1.js:443)
at r (jquery.dataTables.min.js:76)
at P (jquery.dataTables.min.js:31)
at T (jquery.dataTables.min.js:31)
at ha (jquery.dataTables.min.js:48)
at e (jquery.dataTables.min.js:93)
at HTMLTableElement.<anonymous> (jquery.dataTables.min.js:93)
[JS Fiddle for this issue is here: ][1]

[1]: http://jsfiddle.net/5hwg1p36/

发生此错误的原因是您尝试添加title属性为null的新列。 jQuery DataTables 要求该属性不为空

修复非常简单,只需将title: null更改为title: "".在你的小提琴上,它在线35.

self.Columns.push({
data: null, 
title: "", // this property cannot be null, so use empty string instead
searchable: false, 
visible: true, 
orderable: false, 
defaultContent: ''
});

工作小提琴:http://jsfiddle.net/5hwg1p36/1/

最新更新