我想在我的gridview中使用javascript修复标题? [英] I want a fixed header in my gridview using javascript?

查看:46
本文介绍了我想在我的gridview中使用javascript修复标题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用javascript修复gridview的标题,一切正常,除了标题下方有一个白色空间...

请一些人帮我删除白色标题下面的空间..



提前致谢....



我是什么尝试过:



I am trying to fix the header for gridview using javascript and everything is working fine except there is a white space comming below the header...
Please can some one help me to remove the white space below the header..

Thanks in advance....

What I have tried:

<script type = "text/javascript">
    var GridId = "<%= grdEmployeeExpenses.ClientID %>";
    var ScrollHeight = 600;
    window.onload = function () {
        var grid = document.getElementById(GridId);
        var gridWidth = grid.offsetWidth;
        var gridHeight = grid.offsetHeight;
        var headerCellWidths = new Array();
        for (var i = 0; i < grid.getElementsByTagName("TH").length; i++) {
            headerCellWidths[i] = grid.getElementsByTagName("TH")[i].offsetWidth;
        }
        grid.parentNode.appendChild(document.createElement("div"));
        var parentDiv = grid.parentNode;
 
        var table = document.createElement("table");
        for (i = 0; i < grid.attributes.length; i++) {
            if (grid.attributes[i].specified && grid.attributes[i].name != "id") {
                table.setAttribute(grid.attributes[i].name, grid.attributes[i].value);
            }
        }
        table.style.cssText = grid.style.cssText;
        table.style.width = gridWidth + "px";
        table.appendChild(document.createElement("tbody"));
        table.getElementsByTagName("tbody")[0].appendChild(grid.getElementsByTagName("TR")[0]);
        var cells = table.getElementsByTagName("TH");
 
        var gridRow = grid.getElementsByTagName("TR")[0];
        for (var i = 0; i < cells.length; i++) {
            var width;
            if (headerCellWidths[i] > gridRow.getElementsByTagName("TD")[i].offsetWidth) {
                width = headerCellWidths[i];
            }
            else {
                width = gridRow.getElementsByTagName("TD")[i].offsetWidth;
            }
            cells[i].style.width = parseInt(width - 3) + "px";
            gridRow.getElementsByTagName("TD")[i].style.width = parseInt(width - 3) + "px";
        }
        parentDiv.removeChild(grid);
 
        var dummyHeader = document.createElement("div");
        dummyHeader.appendChild(table);
        parentDiv.appendChild(dummyHeader);
        var scrollableDiv = document.createElement("div");
        if(parseInt(gridHeight) > ScrollHeight){
            gridWidth = parseInt(gridWidth) + 25;
        }
        scrollableDiv.style.cssText = "overflow:auto;height:" + ScrollHeight + "px;width:" + gridWidth + "px";
        scrollableDiv.appendChild(grid);
        parentDiv.appendChild(scrollableDiv);
    }
    </script> 

推荐答案

我有分析你脚本只是在代码下方注释,你的问题将得到解决。



< script type =text / javascript>

var GridId =<%= grdEmployeeExpenses.ClientID%> ;

var ScrollHeight = 600;

window.onload = function(){

var grid = document.getElementById(GridId);

var gridWidth = grid.offsetWidth;

var gridHeight = grid.offsetHeight;

var headerCellWidths = new Array();

for(var i = 0; i< grid.getElementsByTagName(TH)。length; i ++){

headerCellWidths [i] = grid.getElementsByTagName(TH)[i ] .offsetWidth;

}

grid.parentNode.appendChild(document.createElement(div));

var parentDiv = grid。 parentNode;



var table = document.createElement(table);

for(i = 0; i< grid.attributes .length; i ++){

if(grid.attributes [i] .specified && grid.attribute s [i] .name!=id){

table.setAttribute(grid.attributes [i] .name,grid.attributes [i] .value);

}

}

table.style.cssText = grid.style.cssText;

//table.style.width = gridWidth + px;

table.appendChild(document.createElement(tbody));

table.getElementsByTagName(tbody)[0] .appendChild(grid。 getElementsByTagName(TR)[0]);

var cells = table.getElementsByTagName(TH);



var gridRow = grid.getElementsByTagName(TR)[0];

for(var i = 0;我< cells.length; i ++){

var width;

if(headerCellWidths [i]> gridRow.getElementsByTagName(TD)[i] .offsetWidth){

width = headerCellWidths [i];

}

else {

width = gridRow.getElementsByTagName(TD)[i] .offsetWidth;

}

cells [i] .style.width = parseInt(width - 3)+px;

gridRow。 getElementsByTagName(TD)[i] .style.width = parseInt(width - 3)+px;

}

parentDiv.removeChild(grid); < br $>


var dummyHeader = document.createElement(div);

dummyHeader.appendChild(table);

parentDiv.appendChild(dummyHeader);

var scrollableDiv = document.createElement(div);

if(parseInt(gridHeight)> ScrollHeight){

gridWidth = parseInt(gridWidth)+ 25;

}

scrollableDiv.style.cssText =overflow:auto; height:+ ScrollHeight +px;;

scrollableDiv.appendChild(grid);

parentDiv.appendChild(scrollableDiv);

}

< / script>
I have analysis you script just comment below code and your problem will be fixed.

<script type = "text/javascript">
var GridId = "<%= grdEmployeeExpenses.ClientID %>";
var ScrollHeight = 600;
window.onload = function () {
var grid = document.getElementById(GridId);
var gridWidth = grid.offsetWidth;
var gridHeight = grid.offsetHeight;
var headerCellWidths = new Array();
for (var i = 0; i < grid.getElementsByTagName("TH").length; i++) {
headerCellWidths[i] = grid.getElementsByTagName("TH")[i].offsetWidth;
}
grid.parentNode.appendChild(document.createElement("div"));
var parentDiv = grid.parentNode;

var table = document.createElement("table");
for (i = 0; i < grid.attributes.length; i++) {
if (grid.attributes[i].specified && grid.attributes[i].name != "id") {
table.setAttribute(grid.attributes[i].name, grid.attributes[i].value);
}
}
table.style.cssText = grid.style.cssText;
//table.style.width = gridWidth + "px";
table.appendChild(document.createElement("tbody"));
table.getElementsByTagName("tbody")[0].appendChild(grid.getElementsByTagName("TR")[0]);
var cells = table.getElementsByTagName("TH");

var gridRow = grid.getElementsByTagName("TR")[0];
for (var i = 0; i < cells.length; i++) {
var width;
if (headerCellWidths[i] > gridRow.getElementsByTagName("TD")[i].offsetWidth) {
width = headerCellWidths[i];
}
else {
width = gridRow.getElementsByTagName("TD")[i].offsetWidth;
}
cells[i].style.width = parseInt(width - 3) + "px";
gridRow.getElementsByTagName("TD")[i].style.width = parseInt(width - 3) + "px";
}
parentDiv.removeChild(grid);

var dummyHeader = document.createElement("div");
dummyHeader.appendChild(table);
parentDiv.appendChild(dummyHeader);
var scrollableDiv = document.createElement("div");
if(parseInt(gridHeight) > ScrollHeight){
gridWidth = parseInt(gridWidth) + 25;
}
scrollableDiv.style.cssText = "overflow:auto;height:" + ScrollHeight + "px;";
scrollableDiv.appendChild(grid);
parentDiv.appendChild(scrollableDiv);
}
</script>


这篇关于我想在我的gridview中使用javascript修复标题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆