Tablesorter filter-onlyAvail

Tablesorter filter-onlyAvail

我通过 gem jquery-tablesorter-rails

使用 tablesorter (mottie's fork v2.23.0)

我有一个 table,我在其中使用 classes filter-select filter-onlyAvail 来获取列中仅可用选项的下拉列表。

最近我将 jeditable 添加到列中,该列将脚本标记添加到单元格(并且可能还将值嵌入跨度中),如下所示:

<td>                  
  <span class="editable" data-id="15" data-name="user[route]" title="Click to edit..">1</span>
  <script type="text/javascript">
    ...script for jeditable....
  </script>
</td>

结果是 select 过滤器下拉列表显示了所有值的变体,包括脚本内容。

我尝试使用 filter_selectSource 添加了过滤器匹配 class,但是过滤器的内容太常见了(比如 1,2 99 等)我在脚本。

关于如何在 select 人口和搜索结果中丢弃脚本标签内容的任何指示?

使用 filter_selectSource option 填充过滤器下拉列表。

设置为数组

filter_selectSource : {
  0 : [ "abc", "def", "ghi", "xyz" ]
}

或函数:

filter_selectSource : function(table, column, onlyAvail){
  // get an array of all table cell contents for a table column
  var array = $.tablesorter.filter.getOptions(table, column, onlyAvail);
  // manipulate the array as desired, then return it

  return array;
}

此外,由于在动态排序的 table 行中使用内联脚本并不理想,请查看使用 HTML5 contenteditable 的 editable widget允许用户交互。

我最终在要用于过滤和排序的元素上使用了 data-text="value"。

在我的例子中是标签。

但是,这不会更新 tablesorter 的过滤器值或搜索更新单元格的内容。