我有一个gridview,每行都有文本框和复选框。文本框中绑定了水印。(在第一页加载时用客户端的隐藏字段绑定)当我想用javascript代码修复gridview标题时,我在论坛中发现,回发后,水印值重复。如果我发表评论:
DivHR.appendChild(tbl.cloneNode(真));
这一行,该值不重复,但标题向下滚动。我怎么能解决这个问题?问题是什么?大约两个星期我无法解决这个问题。请帮忙..
以下是代码:
<script language="javascript" type="text/javascript">
function MakeStaticHeader(gridId, height, width, headerHeight, isFooter) {
var tbl = document.getElementById(gridId);
if (tbl) {
var DivHR = document.getElementById('DivHeaderRow');
var DivMC = document.getElementById('DivMainContent');
var DivFR = document.getElementById('DivFooterRow');
//*** Set divheaderRow Properties ****
DivHR.style.height = headerHeight + 'px';
DivHR.style.width = (parseInt(width)-16) + 'px';
DivHR.style.position = 'relative';
DivHR.style.top = '0px';
DivHR.style.zIndex = '10';
DivHR.style.verticalAlign = 'top';
//*** Set divMainContent Properties ****
DivMC.style.width = width + 'px';
DivMC.style.height = height + 'px';
DivMC.style.position = 'relative';
DivMC.style.top = -headerHeight+ 'px';
DivMC.style.zIndex = '1';
//*** Set divFooterRow Properties ****
DivFR.style.width = (parseInt(width) -16) + 'px';
DivFR.style.position = 'relative';
DivFR.style.paddingtop = '2px';
if (isFooter) {
var tblfr = tbl.cloneNode(true);
tblfr.removeChild(tblfr.getElementsByTagName('tbody')[0]);
var tblBody = document.createElement('tbody');
tblfr.style.width = '100%';
tblfr.cellSpacing = "0";
tblfr.border = "0px";
tblfr.rules = "none";
//*****In the case of Footer Row *******
tblBody.appendChild(tbl.rows[tbl.rows.length - 1]);
tblfr.appendChild(tblBody);
DivFR.appendChild(tblfr);
}
//****Copy Header in divHeaderRow****
DivHR.appendChild(tbl.cloneNode(true));
}
}
function OnScrollDiv(Scrollablediv) {
document.getElementById('DivHeaderRow').scrollLeft = Scrollablediv.scrollLeft;
document.getElementById('DivFooterRow').scrollLeft = Scrollablediv.scrollLeft;
}
这是代码隐藏:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session["kullanici"] == null)
{
Response.Redirect("Login.aspx");
}
else if (Request.QueryString["A_ID"] == null)
{
Response.Redirect("Sorular.aspx?A_ID=1&K_ID=" + Session["kullanici"]);
}
aciklama(); //The value of watermark get from database to hiddenfields with this function
}
kilitliSoru();
varsayilanAciklamaDsbld();
ScriptManager.RegisterStartupScript(Page, this.GetType(), "Key", "<script>MakeStaticHeader('" + GridView1.ClientID + "',500,1350, 39,false); </script>", false);
}