データソースに日付フィールドを持つ剣道グリッドがあります。フィールドを表示するとき、テンプレートを使用して、英国の日付形式「dd/MM/yyyy」で日付を表示します。問題は、フィルタリングするときです。日付フィルターを英国形式で表示する方法がわかりません。
私が抱えているもう1つの問題は、日時型がなく、日付だけであるため、日時ではなく日付でのみフィルタリングできることです。
ヘルプやアイデアをいただければ幸いです。
これは部分ビューです (cshtml)
<script type="text/javascript">
$(document).ready(function() {
var date = new Date();
var dateString = date.getMonth()+1 + "/" + date.getDate() + "/" + date.getFullYear();
var url = '@Url.Action(AccountTypeController.GetAllocationGridData, new {id = Model.Id})';
var dataSource = new kendo.data.DataSource({
serverPaging: true,
serverSorting: true,
serverFiltering: true,
pageSize: 10,
transport: {
read: {
type: 'post',
dataType: 'json',
url: url
},
parameterMap: function(options) {
if (options.filter) {
for (var i = 0; i < options.filter.filters.length; i++) {
if (options.filter.filters[i].field == 'Start' || options.filter.filters[i].field == 'End') {
options.filter.filters[i].value = kendo.toString(options.filter.filters[i].value, "MM/dd/yyyy");
}
}
}
return options;
}
},
schema: {
data: 'Data',
total: 'Count',
model: {
id: 'Id',
fields: {
Id: { type: 'number' },
Start: { type: 'date' },
End: { type: 'date' },
Allocation: { type: 'number' }
}
}
},
sort: {
field: "Start",
dir: "asc"
},
filter:{
logic: "and",
filters: [
{
field: "End",
operator: "gt",
value: dateString
}
]
}
});
$('#account-allocation').kendoGrid({
height: 383,
dataSource: dataSource,
columns: [
{
field: 'Start',
title: 'Start Date',
template: '#= kendo.toString(Start,"dd/MM/yyyy HH:mm") #'
},
{
field: 'End',
title: 'End Date',
template: '#= kendo.toString(End,"dd/MM/yyyy HH:mm") #'
},
{
field: 'NoSpaces',
title: 'Number of Spaces',
filterable: false
},
{
field: 'Id',
filterable: false,
title: 'Actions',
template: '<a class="link-lightbox" href="@Url.Action(AccountTypeController.UpdateAllocationAction1, AccountTypeController.Name)/#= Id #"><img src="@Url.Content("~/Content/img/grid-update.png")" alt="Update"/></a>',
width: 75
}
],
filterable: true,
sortable: false,
scrollable: false,
pageable: true
});
</script>
<div class="panel panel-w">
<h2>@Model.Name Allocations
<a href="@Url.Action(AccountTypeController.SetAllocationAction1, new { id = Model.Id })" class="button link-lightbox"><span class="edit">Set Account Type Allocation</span></a>
</h2>
<div id="account-allocation"></div>
</div>