在我的项目中,我使用的是jQuery Datatables插件,并且我实现了Column Filter和Editable插件。所有最新版本。
问题是在向表中添加新值(通过添加新记录或更新现有记录)后,相应列的下拉过滤器不会更新。即无论对表中的记录应用了哪些更改,select都保持不变。
在我的研究过程中,我发现了一个演示(http://jquery-datatables-editable.googlecode.com/svn/trunk/columnFilter.html),它演示了上述插件的集成,但仅限于文本框过滤器。所以我已下载此网页并尝试仅更改文本过滤器以进行选择。然而,这没有成功。
答案 0 :(得分:0)
每当表行发生更改时,您都需要重新设置可编辑功能。
您可以在此页面中看到如何实现启用/禁用功能: How to Enable/Disable JEditable
答案 1 :(得分:0)
我通过更改Column Filtering插件源代码解决了这个问题。我用这段代码替换了第397行:
if (oSettings.iDraw == 2 || ajaxCall == true && oSettings.sAjaxSource != null && oSettings.sAjaxSource != "" && !oSettings.oFeatures.bServerSide) { if (iColumn == 3) { ajaxCall = false; }
将iColumn
与3进行比较,因为第一个下拉列表位于第四个表列中。接下来,变量ajaxCall
表示某些行已被编辑,添加或删除。因为只要为此目的进行ajax调用,我就将变量更改为true。为安全起见,我在读取插件源代码之前将变量初始化为false。