0

在我的项目中,我使用了 jQuery Datatables 插件,并且实现了 Column Filter 和 Editable 插件。所有最新版本。

问题是在向表中添加新值(通过添加新记录或更新现有记录)后,相应列的下拉过滤器不会更新。即无论对表中的记录应用什么更改,选择都保持不变。

在我的研究过程中,我发现了一个演示(http://jquery-datatables-editable.googlecode.com/svn/trunk/columnFilter.html),它演示了上述插件的集成,但仅限于文本框过滤器。所以我下载了这个网页并试图只改变一个文本过滤器来选择。然而这并没有成功。

4

2 回答 2

0

每当表格行发生变化时,您都需要重新设置可编辑功能。

  1. $('.editable').editable('禁用');
  2. 使用新的选择选项重新初始化

您可以在此页面中查看如何实现启用/禁用功能: 如何启用/禁用 JEditable

于 2013-05-01T18:33:06.007 回答
0

我通过更改列过滤插件源代码解决了这个问题。我用以下代码替换了第 397 行:

if (oSettings.iDraw == 2 || ajaxCall == true && oSettings.sAjaxSource != null && oSettings.sAjaxSource != "" && !oSettings.oFeatures.bServerSide) { if (iColumn == 3) { ajaxCall = false; }

whereiColumn与 3 相比,因为第一个下拉列表在第四个表格列中。接下来,变量ajaxCall表明某行已被编辑、添加或删除。因为每当为此目的进行 ajax 调用时,我都会将变量更改为 true。为了安全起见,我在读取插件源代码之前将变量初始化为 false。

于 2013-05-09T19:49:43.513 回答