jqgrid v5.0.1 列數多的時候 setGridWidth 表頭和內容對不齊


經測,setGridWidth方法改的並不是第一行的寬度,而是第一行后幾行的寬度。所以要加上第一行的寬度。

最后幾行代碼改的是最后一列的寬度,然而並沒有用。滾動條在表格之外。

本地4263行開始

$.each($t.p.colModel, function(i) {
					if(this.hidden === false && !this.fixed){
						cw = this.widthOrg;
						cw = Math.round(aw*cw/($t.p.tblwidth-brd*vc-gw));
						if (cw < 0) { return; }
						this.width =cw;
						initwidth += cw;
						$t.grid.headers[i].width=cw;
						$t.grid.headers[i].el.style.width = cw + "px";
						$($t.grid.hDiv).find('.jqg-first-row-header th:eq(' + i + ')').css({width:cw + "px"});//mod by xss 窗口縮放時發現對不齊
						if($t.p.footerrow) { $t.grid.footers[i].style.width = cw+"px"; }
						if(cle) { $t.grid.cols[i].style.width = cw+"px"; }
						lvc = i;
					}
				});

				if (!lvc) { return; }

				cr =0;
				if (hs) {
					if(nwidth-gw-(initwidth+brd*vc) !== scw){
						cr = nwidth-gw-(initwidth+brd*vc)-scw;
					}
				} else if( Math.abs(nwidth-gw-(initwidth+brd*vc)) !== 1) {
					cr = nwidth-gw-(initwidth+brd*vc);
				}
				$t.p.colModel[lvc].width += cr;
				$t.p.tblwidth = initwidth+cr+brd*vc+gw;
				if($t.p.tblwidth > nwidth) {
					var delta = $t.p.tblwidth - parseInt(nwidth,10);
					$t.p.tblwidth = nwidth;
					cw = $t.p.colModel[lvc].width = $t.p.colModel[lvc].width-delta;
				} else {
					cw= $t.p.colModel[lvc].width;
				}
			    //mod by xss
				//$t.grid.headers[lvc].width = cw;
				//$t.grid.headers[lvc].el.style.width = cw + "px";
				//$($t.grid.hDiv).find('.jqg-first-row-header th:eq(' + lvc + ')').css({ width: cw + "px" });//mod by xss
				//if(cle) { $t.grid.cols[lvc].style.width = cw+"px"; }
				if($t.p.footerrow) {
					//$t.grid.footers[lvc].style.width = cw+"px";
				}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM