蒲公英DataTables deferRender无法正常工作

时间:2015-06-03 06:01:07

标签: jsp spring-mvc jquery-datatables dandelion

我使用ajax源来显示表上的数据。 在我的桌子上方,我有标准来过滤我想要在我的桌子上显示的内容。 我想要实现的是禁用初始数据加载,所以当页面加载时我会得到空表,然后在我选择标准后按“应用过滤器”按钮数据将被加载。

所以我尝试过使用deferRender,但似乎无法正常工作。 这是代码

<datatables:table id="myTableId" deferRender="true" url="/persons" serverSide="true" processing="true" dom="l0rtip" filterSelector="#filterButton" filterClearSelector="#filterClearButton">
     <datatables:column title="Id" name="id" property="id" />
     <datatables:column title="FirstName" name="firstName" property="firstName" />
     <datatables:column title="LastName" name="lastName" property="lastName" />
     <datatables:column title="City" name="city" property="address.town.name" filterable="true" filterCssClass="input-medium" />
     <datatables:column title="Mail" name="mail" property="mail" renderFunction="ajax#mailify" />
     <datatables:column title="Salary" name="salary" property="salary" renderFunction="custom-rendering#toCurrency" filterable="true" filterType="number_range" filterCssClass="input-small" />
     <datatables:column title="BirthDate" name="birthDate" property="birthDate" filterable="true" filterType="date_range" filterDateFormat="yyyy-mm-dd" renderFunction="custom-rendering,moment,bootstrap-datepicker#toDate" filterCssClass="input-small"/>
     <datatables:column title="Company" name="company" property="company.name" filterable="true" filterCssClass="input-small" filterType="select" filterValues="filtering#predefinedValues" />
     <datatables:extraHtml uid="0" cssStyle="float:right;">
        <a id="filterButton" value="Filter" class="btn btn-primary">Apply filters</a>
        <a id="filterClearButton" value="Filter" class="btn btn-inverse">Clear filters</a>
     </datatables:extraHtml>
  </datatables:table>

在控制器上:

@RequestMapping(value = "/persons")
public @ResponseBody
DatatablesResponse<Person> findAllForDataTablesFullSpring(@DatatablesParams DatatablesCriterias criterias) {
    DataSet<Person> dataSet = personService.findPersonsWithDatatablesCriterias(criterias);
    return DatatablesResponse.build(dataSet, criterias);
}

1 个答案:

答案 0 :(得分:0)

您可能对deferLoading功能感兴趣而不是deferRender。 有关使用普通DataTables的示例,请参阅this post

不幸的是,Dandelion-Datatables还不支持此功能。一个issue has just been filled

Stackoverflow规则要求免责声明:我是Dandelion-Datatables的作者