mergeGrid:関数(ME){
VARグリッド=この、
colIndexArray = [0、1、4]、
isAllSome。
me.store.on( '負荷'、関数(){
isAllSome = isAllSome ==未定義真:isAllSome; //默认为真
// 1是否含有数据
するvarのGridView =のdocument.getElementById(grid.getView()。 getId()+ '-body');
(GridViewの== NULL)であれば{
リターン;
}
// 2获取グリッド的所有TR
VAR trArray = [];
VAR tableArray = gridView.getElementsByTagName( 'テーブル');
IF( tableArray!= NULL)
Ext.each(tableArray、関数(テーブル){
table.setAttribute( "スタイル"、 "国境:0;背景色:白");
});
trArray = gridView.getElementsByTagName( 'TR');
VAR = tdArray gridView.getElementsByTagName( 'TD');
VAR = COUNT 。1;
IF(tdArray = NULL!){
Ext.each(tdArray、関数(TD){
td.style.borderBottom = "固体#1ピクセルE9E9E9";
});
}
// 3マージ操作
IF(isAllSome){すべての列が3.1 //合わせた:TRは、指定されたTDと同じでのみ隣接マージう
VARをlastTr = trArray [0]; // 最初の行を指し
// 1)データの第2行から、グリッドをトラバースTR。始めます
(。; I <trLength; VAR 1 = I、trLength = trArray.length I ++は)のために{
VAR thisTr = trArray [I]、
真のVAR = isPass; //確認した場合
0 = 2 VARインデックス= I%の I /! 2:I / 2から1; //表示位置
// 2)を合わせ、カラムを通過する必要がある
(VARのJ = 0、= colArrayLength colIndexArray.length; J <colArrayLength; J ++){
VAR = colIndexArray colIndex、[J]。
// 3)一致しtdの2つの列を比較し、一致する場合、現在の列の最後のポイントを置く
(lastTr.childNodes [colIndex、】.innerText!= thisTr.childNodes [colIndex、】.innerText)場合、{
(VAR = N-ため0、N <colIndexArray.lengthあり; n ++ ){
colIndex = colIndexArray [N]。
thisTr.childNodes [colIndex] [ "borderTop"] = "1ピクセル固体#1 e9e9e9" .style。
trArray [インデックス] .childNodes [colIndex] .innerHTML = lastTr.childNodes [colIndex] .innerHTML。
lastTr.childNodes [colIndex] .innerHTML = "";
trArray [インデックス] .childNodes [colIndex] .style [ "textAlign"] = '中央'。
lastTr.childNodes [colIndex] [ "borderBottom"] = "" .style。
// IF(colIndex == 0){
// lastTr.childNodes [colIndex] .style [ "幅"] = "
/ *他(colIndexの== 0の場合 ){// チェックボックスWLPは、2019年3月20日変性
lastTr.childNodes [colIndex、] .style [ "幅"] = "28px"を;
trArray [インデックス] .childNodes [colIndex、】 、 "25ピクセル" .style [ "幅"] =
* /}
}
; lastTr = thisTr
isPass = falseに、
BREAK;
}
}
// 4 colIndexArrayが検証した場合、現在の行'組み合わせる'線にマージPUT)
IF(isPass ){
{(; J <colArrayLength J ++ VAR J = 0、colArrayLength = colIndexArray.length)のための
VAR colIndex = colIndexArray [J]。
thisTr.childNodes [colIndex] [ "borderBottom"] = "" .style。
thisTr.childNodes [colIndex] .innerHTML = "";
// IF(colIndex == 0){
// thisTr.childNodes [colIndex] .style [ "幅"] = "79px"。
//}
/ *他の場合(colIndex == 0){
thisTr.childNodes [colIndex] .style [ "幅"] = "28px"。
} * /
}
}
}
}
})。
}