我使用:
创建数据表 $('#purForm').dataTable({
"bRetrieve": true,
"bJQueryUI": true,
"sDom": "<'row'<'span6'l><'span6'f>r>t<'row'<'span6'i><'span6'p>>",
"bPaginate": false,
"bAutoWidth": false,
"bFilter": false
});
然后编辑我用datatables editable plugin:
http://code.google.com/p/jquery-datatables-editable/wiki/EditCell
所以,基本上为了使它可编辑我做:
$('#purForm').dataTable().makeEditable({
sUpdateURL: function (value, settings) {
return (value);
}
});
在进行可编辑后,我尝试使用以下方法动态添加行:
$('#purForm').dataTable().fnAddData(['', '', '', '', '', '']);
但是editable不能用于这个动态添加的行,这是可以理解的,因为它可能没有使用Jquery的live api。如何更正此问题,以便即使对于动态添加的行也能正常工作?
快速而肮脏的黑客将再次调用该函数:
$('#purForm').dataTable().makeEditable({
sUpdateURL: function (value, settings) {
return (value);
}
});
还有更好的选择吗?
答案 0 :(得分:2)
这是一个已知的错误。使用带有数据表的Jeditable库,无法使用fnAddData()函数添加新行。
错误报告在这里:
http://code.google.com/p/jquery-datatables-editable/issues/detail?id=57
作者似乎并不认为这是一个错误,除了复制看似复杂的私有函数的功能之外,它并没有真正提供任何有用的帮助。如果您希望看到更简单的方法,那么我强烈建议您对该错误发表评论以通知作者。
仅供参考,要添加新行并使其可编辑,您需要创建自定义表单,然后通过表单中的字段提交行数据。请参阅此处的说明:
http://code.google.com/p/jquery-datatables-editable/wiki/AddingNewRecords