Jsp 如何使用dandelion数据表搜索日期范围
我正在开发一个web应用程序,使用dandelion datatables进行服务器端处理、分页和过滤。我使用的版本是1.1.0JSP 我想使用一个外部表单来更新我的datatable的数据集。 该表有两个字段:开始日期、停止日期,如下所示:Jsp 如何使用dandelion数据表搜索日期范围,jsp,spring-mvc,datatables,bootstrap-datetimepicker,dandelion,Jsp,Spring Mvc,Datatables,Bootstrap Datetimepicker,Dandelion,我正在开发一个web应用程序,使用dandelion datatables进行服务器端处理、分页和过滤。我使用的版本是1.1.0JSP 我想使用一个外部表单来更新我的datatable的数据集。 该表有两个字段:开始日期、停止日期,如下所示: <datatables:table id="myTableId" url="/results" serverSide="true" serverparams="getFilterParams" processing="true" theme="bo
<datatables:table id="myTableId" url="/results" serverSide="true" serverparams="getFilterParams" processing="true" theme="bootstrap3" cssClass="table table-striped">
<datatables:column title="Start Date" property="startDate" filterable="false" />
<datatables:column title="Stop Date" property="stopDate" filterable="false" />
</datatables:table>
控制器
您能告诉我如何过滤搜索datetimepicker外部表单中所选范围内所有行的结果吗
谢谢最近我做了同样的任务,并用以下技巧解决了这个问题: 我创建了一个带有dateFrom和dateTo字段的模型类。 当用户在datepickers中选择日期并按下确认按钮时,服务器接收带有@ModelAttribute的post请求,其中包含dateFrom和dateTo。 然后我从数据库中检索具有该日期的数据。 从日期介于:datefrom和:dateto之间的表中选择*并将其发送回我的视图。
<sf:form id="searchForm">
<div class="form-group">
<div>Start Date</div>
<div class='input-group date' id='startDate'>
<input name='startDate' type='text' class="form-control" /> <span
class="input-group-addon"> <span
class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>
<div class="form-group">
<div>Stop Date</div>
<div class='input-group date' id='stopDate'>
<input name='stopDate' type='text' class="form-control" /> <span
class="input-group-addon"> <span
class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>
<div>
<button id="searchBtn" class="btn btn-primary btn-search searchButton"
type="button" onclick="oTable_myTableId.ajax.reload();">Search</button>
</div>
</sf:form>
function getFilterParams(aoData) {
aoData.push({"name" : "startDate", "value" : $('#startDate').val()});
aoData.push({"name" : "stopDate", "value" : $('#stopDate').val()});
}
@RequestMapping(value = "/results")
public @ResponseBody DatatablesResponse<Results> findAllForDataTables(HttpServletRequest request) {
DatatablesCriterias dataTableCriterias = DatatablesCriterias.getFromRequest(request);
for (ColumnDef columnDef : dataTableCriterias.getColumnDefs()) {
switch (columnDef.getName()) {
case "startDate":
columnDef.setSearch(request.getParameter("startDate"));
break;
case "stopDate":
columnDef.setSearch(request.getParameter("stopDate"));
break;
}
}
DataSet<Results> results = this.resultsServiceimpl.findResultsWithDatatablesCriterias(dataTableCriterias);
return DatatablesResponse.build(results, dataTableCriterias);
}