私はここで同様のクエリを探しましたが、私の質問に完全に、または私が理解できる方法で完全に答えるものはありません.
日時を表す MySQL データベースから文字列値を取得します。つまり、「2013 年 10 月 3 日 05:30:45PM」は、データベースでは「20131003173045」と表されます。この値は、剣道グリッドの「最終ログイン」列に日付として表示されます。これはすべて、MVC フレームワークを使用した PHP 指向の Web ページに含まれています。
以前、SQL クエリで日付形式を適用して文字列を "20131003173045" から "03 Oct, 2013 05:30:45PM" に変更しましたが、これは KendoGrid では文字列として表示されます。つまり、11 月の日付は 10 月の日付より前に表示される可能性があります。 、4 月の日付が最初に表示されます。これは当然のことながら、特にこの列で並べ替えようとする場合は、望ましい機能ではありません。
KendoGrid をレンダリングするページのサンプル コード:
<div class="div1">
<div>
<table id="listGrid"></table>
</div>
</div>
<script>
$(function() {
$("#grid").kendoGrid({
scrollable: false,
groupable: false,
sortable: {
mode: "multiple"
},
resizable: true,
pageable: true,
dataSource:
{
transport:
{
read: {
url: "<?= $site_url ?>Settings/Users/List",
dataType: "json"
},
parameterMap: function (model, operation) {
if (operation == "read") {
return model;
}
else if(model) {
return { "json" : kendo.stringify(model) };
}
else
return "";
}
},
pageSize: 20,
serverPaging: true,
serverSorting: true,
sort: { field: "LastLogin", dir: "desc" },
serverGrouping: true,
serverAggregates: false,
schema: {
total: "total",
data: "data",
groups: "groups"
}
},
toolbar: [ { title: "", template:'<a class="k-button k-button-icontext k-grid-add" href="<?= $site_url ?>Settings/Users/Add/">Add New User</a>' }],
columns: [
//{field: "Id", width: "40px"},
{field: "UserName", title: "Alias", width: "160px"},
{field: "ForeName", title: "Forename", width: "100px"},
{field: "SurName", title: "Surname", width: "160px"},
{field: "Initials", width: "80px"},
{field: "CrmId", title: "CRM ID", width: "100px"},
{field: "Dept", title: "Department", width: "100px"},
{field: "Position"},
// Below is the field in question
{field: "LastLogin", title: "Last Login", width: "160px"},
{field: "BlockedStatus", title: "Status", width: "90px"},
{ title: "", template:'<a class="k-button k-button-icontext k-grid-edit" href="<?= $site_url ?>Settings/Users/Update/#: Id #">Edit</a>' }
]
});
});
</script>
kendo.parseDate と kendo.toString を調べて、2 つを組み合わせてみましたが、何も機能していないようです。「null」または「20131003173045」が表示されるか、ページが読み込まれません。
データベースのデータを変更することはできません。最初に行っていた SQL クエリの一部としてフォーマットすることしかできません。
「20131003173045」文字列全体が「2013 年 10 月 3 日 05:30:45PM」になり、適切な時系列順に並べられるようにする必要があります。使用するツール、何が間違っていますか?