我有下面的下拉列表。
<select name="sortBy" id="sortBy">
<option value="0_asc" selected="selected">Reference #</option>
<option value="0_desc">Reference # (desc)</option>
<option value="pe-sku-column_asc">Part # (asc)</option>
<option value="pe-sku-column_desc">Part # (desc)</option>
<option value="pe-title-column_asc">Description (asc)</option>
<option value="pe-title-column_desc">Description (desc)</option>
<option value="pe-price-column_asc">Price (asc)</option>
<option value="pe-price-column_desc">Price (desc)</option>
</select>
现在我想根据下拉选择
对datatable
进行排序
我试过这个
jQuery(document).ready(function ($) {
var oTable = $('#super-product-table').DataTable({
dom: 't'
});
$('#myInputTextField').keyup(function () {
oTable.search($(this).val()).draw();
})
$("#sortBy").change(function () {
oTable.fnSort([[1, 'asc']]);
})
});
但它给了我
TypeError:oTable.fnSort不是函数
我在datatable.js
中搜索了fnsort并找到了它。
还有一件事,当我将DataTable
更改为dataTable
时,排序开始工作,自定义搜索会停止。
答案 0 :(得分:1)
请参阅@davidkonrad提供的the answer,了解dataTable()
和DataTable()
之间的差异。
如果您想使用DataTable()
,请使用较新的API方法order()
替换较旧的API方法fnSort
。例如:
oTable.order([1, 'asc']).draw();
有关详细信息,请参阅conversion guide for DataTables 1.10。