私はデータベースに保存するslickgirdを持っており、計算は機能します。ただし、私の問題は、データベースからデータを返してslickgridにデータを入力するときです。次の形式でデータを正常に返すAjaxクエリを呼び出しています。
[
{
'HeaderService': 'ServicerReview',
'Service': '',
'Numberof': '',
'at': '',
'Charged': '',
'Total': '',
'Total2': '',
'Discount': '',
'FFO': '',
'EC': '',
'ECat': '',
'ECCost': '',
'ECCostTotal': '',
'ECCostTotal2': '',
'Margin': ''
},
{
'HeaderService': '',
'Service': 'SeniorReviewer',
'Numberof': '1',
'at': '@',
'Charged': '£600.00',
'Total': '£600.00',
'Total2': '',
'Discount': '',
'FFO': '',
'EC': '1',
'ECat': '',
'ECCost': '£350.00',
'ECCostTotal': '£350.00',
'ECCostTotal2': '',
'Margin': ''
},
.. and so on.
]
(。同じ構造の他のレコードである)。currentData
次に、グリッドを次のように装飾します。
var columns = [{ id: "HeaderService", name: "Category", field: "HeaderService", options: serviceHeaders, editor: Slick.Editors.SelectOption, width: 200 },
{ id: "Service", name: "Service", field: "Service", options: serviceActuals, editor: Slick.Editors.SelectOption, width: 150 },
{ id: "Numberof", name: "No", field: "Numberof", editor: Slick.Editors.Text, width: 50 },
{ id: "at", name: "", field: "at", width: 30 },
{ id: "Charged", name: "Per Unit", field: "Charged", editor: Slick.Editors.Text },
{ id: "Total", name: "Total", field: "Total", editor: Slick.Editors.Text },
{ id: "Total2", name: "Sub Total", field: "Total2", editor: Slick.Editors.Text },
{ id: "Discount", name: "Discount", field: "Discount", options: ",Yes", editor: Slick.Editors.SelectOption, cssClass: "greenbackground", width: 50 },
{ id: "FFO", name: "Fixed Fee", field: "FFO", editor: Slick.Editors.Text, cssClass: "greenbackground" },
{ id: "EC", name: "EC", field: "EC", editor: Slick.Editors.Text, width: 50 },
{ id: "ECat", name: "Cat", field: "ECat", editor: Slick.Editors.Text, width: 30 },
{ id: "ECCost", name: "Cost", field: "ECCost", editor: Slick.Editors.Text },
{ id: "ECCostTotal", name: "CostTotal", field: "ECCostTotal", editor: Slick.Editors.Text },
{ id: "ECCostTotal2", name: "CostTotal2", field: "ECCostTotal2", editor: Slick.Editors.Text },
{ id: "Margin", name: "Margin", field: "Margin", editor: Slick.Editors.Text }, ];
var options = {
enableCellNavigation: true,
enableColumnReorder: false,
editable: true,
cellHighlightCssClass: "changed"
};
var currentData;
$(function () {
var json = null;
$.ajax({
async: false,
global: false,
type: 'GET',
url: '@Url.Action("GetDetailsforQuote")',
dataType: "json",
success: function (data) {
currentData = "[" + data.toString() + "]";
debugger;
return data;
}
});
data = currentData;
alert(data);
grid = new Slick.Grid("#myServicesGrid", data, columns, options);
しかし、グリッドが画面に表示され、列は正常ですが、データのない空の行がたくさんあります(データには6つのレコードのみが含まれている必要があります)。私が間違っていることに対するアイデアはありますか?