0
我已經用我的自定義數據和使用格式化程序創建了一個JqGrid。JQGrid動態行可編輯
如果我點擊一些文本(例如:「D」),我必須改變文本的其他文本(例如:「R」)。以及背景顏色。
的情況是這樣的:
- 用戶點擊A,小區改變到一個C
- 用戶點擊d,小區改變的R
- 用戶點擊R,小區改變到d
- 用戶點擊C,小區改變到A
JS代碼:
function SalesOptimizationGridData() {
var mydata =[ { size: "S1", op: "170", OPStatus: "X", s1: "-170", S1Status: "C", s2: "170", S2Status: "D", s3: "170", S3Status: "A", s4: "170", S4Status: "C", s5: "170", S5Status: "C" },
{ size: "S2", op: "-170", OPStatus: "D", s1: "-170", S1Status: "C", s2: "-170", S2Status: "X", s3: "-170", S3Status: "D", s4: "-170", S4Status: "C", s5: "-170", S5Status: "D" },
{ size: "S3", op: "370", OPStatus: "X", s1: "370", S1Status: "C", s2: "-370", S2Status: "A", s3: "-370", S3Status: "C", s4: "370", S4Status: "C", s5: "-370", S5Status: "A" },
{ size: "S4", op: "-270", OPStatus: "D", s1: "-170", S1Status: "D", s2: "-170", S2Status: "R", s3: "170", S3Status: "C", s4: "170", S4Status: "A", s5: "170", S5Status: "R" },
{ size: "S5", op: "-340", OPStatus: "X", s1: "170", S1Status: "R", s2: "270", S2Status: "A", s3: "-170", S3Status: "D", s4: "340", S4Status: "D", s5: "-170", S5Status: "A" },
{ size: "S6", op: "-140", OPStatus: "A", s1: "-270", S1Status: "R", s2: "170", S2Status: "A", s3: "170", S3Status: "C", s4: "170", S4Status: "R", s5: "170", S5Status: "C" },
{ size: "S7", op: "-140", OPStatus: "C", s1: "-170", S1Status: "D", s2: "170", S2Status: "D", s3: "-170", S3Status: "R", s4: "240", S4Status: "X", s5: "170", S5Status: "C" },
{ size: "S8", op: "0", OPStatus: "X", s1: "-0", S1Status: " ", s2: "0", S2Status: "D", s3: "0", s4: "0", S3Status: "C", S4Status: "A", s5: "0", S5Status: "X" },
{ size: "S9", op: "170", OPStatus: "R", s1: "170", S1Status: "X", s2: "170", S2Status: "D", s3: "170", S3Status: "A", S4Status: "C", s4: "170", s5: "-170", S5Status: "D" },
];
return mydata;
}
function AssortmentDetailsGrid() {
$("#ao-salesoptimization-grid").jqGrid({
data: SalesOptimizationGridData(),
datatype: "local",
autowidth: false,
//shrinkToFit: true,
rowNum: 15,
rowList: [15, 30, 45],
colNames: ['SIZE', 'OP', 'S1', 'S2', 'S3', 'S4', 'S5'],
colModel: [
{
name: 'size', index: 'id', sortable: true, sorttype: 'int', resizable: true},
{ name: 'op', index: 'op', sortable: true, sorttype: 'int', resizable: true, formatter: opformatter },
{ name: 's1', index: 's1', sortable: true, sorttype: 'int', resizable: true, formatter: s1formatter },
{ name: 's2', index: 's2', sortable: true, sorttype: 'string', resizable: true, formatter: s2formatter },
{ name: 's3', index: 's3', sortable: true, sorttype: 'string', resizable: true, formatter: s3formatter },
{ name: 's4', index: 's4', sortable: true, sorttype: 'int', resizable: true, formatter: s4formatter },
{ name: 's5', index: 's5', formatter: s5formatter }
],
sortname: 'id',
sortorder: 'desc',
loadOnce: true,
gridview: true,
loadComplete: function() {
if ($("#ao-salesoptimization-grid-container").width() !== 0)
$('#ao-assortmentdetails-grid').setGridWidth($("#ao-salesoptimization-grid-container").width());
InitjQueryScroll();
$("#gview_ao-salesoptimization-grid").find('.ui-jqgrid-bdiv').mCustomScrollbar({ theme: "rounded" });
if ($(".ao-op-grid-formatter:first-child > p").text() === "D") {
$(".ao-op-grid-formatter").addClass("statusD");
}
}
});
function opformatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.OPStatus + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
function s1formatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.S1Status + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
function s2formatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.S2Status + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
function s3formatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.S3Status + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
function s4formatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.S4Status + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
function s5formatter(cellvalue, options, rowObject) {
return '<div class="ao-op-grid-formatter"><p>' + rowObject.S5Status + '</p></div>' + ' ' + '<div class="ao-grid-formatter">' + cellvalue + '</div>';
//return cellvalue;
}
}
工作的jsfiddle是here
Kindy幫助我,如果你有什麼想法!提前致謝!
真棒!非常感謝你的時間和幫助:) – Sarav
@IamSarav:不客氣! – Oleg
@IamSarav:再說一次。我看到你自從22個月以來一直是stackoverflow的成員,並且只用了4次投票。投票是stackovrflow最重要的權利之一。 Google和其他搜索引擎使用投票計數對搜索結果進行排序。越多的用戶投票問題/答案越容易找到。您有權每天**投票30個答案和問題。請使用它*任何有用的信息*,你在stackoverflow上找到(不僅在你的問題上的答案)。你以這種方式幫助其他人進行溝通。 – Oleg