Telerikの kendo UI Gridが
あります。2 次元オブジェクト配列をグリッドにバインドしたいと考えています。ASP.NET MVC の Visual Studio 2012 で作業しています。JavaScriptソリューションを使用するソリューションがあります。データソースのデータ型は、2 次元のオブジェクト配列です。これは、ソリューションではすべての行と列が動的である必要があるためです。グリッドをバインドする JavaScript コードは次のとおりです。
function createGrid() {
var url = '@Url.Action("GetSheetData")';
$.get(url, { hospitalId: 100, screenCode: "Ledger", revisionId: 1, applicationUser: "TestUser" }, function (result) {
var columnDefs = result.Columns;
var data = result.Data;
// Now, create the grid using columnDefs as argument
var grid = $("#grid").kendoGrid({
dataSource: {
data: jQuery.parseJSON(data)
},
columns: columnDefs,
height: 430,
editable: "incell",
batch: true,
sortable: {
mode: "single",
allowUnsort: false
},
filterable: {
extra: false,
operators: {
string: { contains: "Contains" }
}
},
scrollable: {
virtual: true
},
navigatable: true
}).data("kendoGrid");
});
}
そして、グリッドをサーバーに戻す関数:
function saveGrid() {
var gridDataArray = $('#grid').data('kendoGrid')._data;
var url = '@Url.Action("SetSheetData")';
$.post(url, {
hospitalId: 100
, screenCode: "Ledger"
, revisionId: 1
, applicationUser: "TestUser"
, dataGrid: JSON.stringify(gridDataArray)
}
, function (result) {
var grid = $("#grid").data("kendoGrid");
});
}
このメソッドの問題は、コードを呼び出すときのデータです。
var gridDataArray = $('#grid').data('kendoGrid')._data;
データを次のように投稿します。
JSON.stringify(gridDataArray);
文字列化されたオブジェクト内のすべての項目が文字列型になります。数字の人でも。データが正しいデータ型を維持するようにしたい
グリッドのデータ型を安全に保つ方法を知っている人はいますか? タイプとして 2 次元オブジェクト配列をサポートする限り、JavaScript メソッドを含まない他のソリューションも問題ありません。
質問が明確であることを願っています。前もって感謝します