【问题标题】:datatables-editable plugin doesn't work after dynamically adding row in datatables在数据表中动态添加行后,datatables-editable 插件不起作用
【发布时间】:2012-05-24 19:21:42
【问题描述】:

我使用以下方法创建数据表:

 $('#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

    });

然后我使用数据表可编辑插件进行编辑:

http://code.google.com/p/jquery-datatables-editable/wiki/EditCell

所以,基本上是为了让它可编辑:

$('#purForm').dataTable().makeEditable({
        sUpdateURL: function (value, settings) {
            return (value);
        }
    });

使可编辑后,我尝试使用动态添加一行:

 $('#purForm').dataTable().fnAddData(['', '', '', '', '', '']);

但可编辑不适用于这个动态添加的行,这是可以理解的,因为它可能没有使用 Jquery 的实时 api。如何更正此问题,使其甚至适用于动态添加的行?

一个又快又脏的 hack 将再次调用该函数:

$('#purForm').dataTable().makeEditable({
            sUpdateURL: function (value, settings) {
                return (value);
            }
        });

还有更好的选择吗?

【问题讨论】:

    标签: javascript jquery datatables jeditable


    【解决方案1】:

    这是一个已知的错误。将 Jeditable 库与数据表一起使用,无法使用 fnAddData() 函数添加新行。

    错误报告在这里:

    http://code.google.com/p/jquery-datatables-editable/issues/detail?id=57

    作者似乎并不认为这是一个错误,并且除了复制看似复杂的私有函数的功能之外并没有真正提供任何有用的帮助。如果您想看到更简单的方法,那么我强烈建议您对错误发表评论以通知作者。

    仅供参考,要添加新行并使其可编辑,您需要创建一个自定义表单,然后通过表单中的字段提交行数据。请参阅此处的说明:

    http://code.google.com/p/jquery-datatables-editable/wiki/AddingNewRecords

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多