2011-09-23 49 views
0

我使用jquery数据表插件,并为我的数据库实例创建ajax创建按钮。我希望在数据库实例创建后重新加载数据表,为了找到解决方案,我花了一天多的时间。我能找到的最接近的是DataTables插件 - fnReloadAjax,但是,我不能让它工作。 我得到以下任一错误:fnReloadAjax不是函数或网络错误:null124234242未找到(在萤火虫)jQuery DataTables - 一次添加刷新表格

任何想法如何重新加载表,以便用户可以看到新插入的数据而无需刷新页面? ?

// Initialize data table 
    var myTable = $('#stocktable').dataTable({ 

     // Try styling 
     "sScrollX": "100%", 
     "sScrollXInner": "100%", 
     "bScrollCollapse": true, 

     // To use themeroller theme 
     "bJQueryUI": true, 
     // To use TableTool plugin 
     "sDom": 'T<"clear">lfrtip', 
     // Allow single row to be selected 
     "oTableTools": { 
      "sRowSelect": "single" 
     } 
     // Use dataTable editable plugin to allow ajax delete 
    }).makeEditable({ 
     // Reference to controller action 
     //sAddURL: "/Stock/AddData", 
     sDeleteURL: "/Stock/DeleteData", 
     sDeleteHttpMethod: "GET" 
    }); 

当我打电话myTable.fnReloadAjax(),我得到的错误.. 真的需要帮助这里... 谢谢...

+0

与我们分享一些代码,如果你想要的不仅仅是猜测。 – rwilliams

回答

1

您在客户端模式下使用数据表;因此,所有行都已经在TBODY中。 fnReloadAjax仅在您处于服务器端处理模式时才有效。

当makeEditable插件向服务器页面发布请求时,它自动在表格的TBODY中添加行,因此您不需要刷新表格 - 它已经在那里。如果您没有看到它,它可能会放在其他页面上,因为添加行时,会根据当前的排序标准进行定位。

如果你真的想刷新表格,你可以做的只是刷新整个页面,但新的行仍然会显示在其他页面上,直到你找到确切的页面放置它时,你才会看到它。

Jovan

+0

嗨,谢谢你的回复,但没有添加新行,我检查了其他页面以及数据记录的总数 – shennyL

+0

如果未添加行,可能是因为添加新行的服务器端功能不起作用。使可编辑插件将只调用“添加”页面并重新加载表格的当前状态。 –

相关问题