Dies ist eine meiner vorherigen Frage nachgehen ist: link textVerstecken/Sichtbar machen von Kontrolle in der Gridview Spalte - Verschiebung Problem
In gridview Kolumne habe ich eine Linkbutton und ein Etikett darunter.
Ich möchte das Label ein-/ausblenden, wenn Linkbutton angeklickt wird. Ich benutze Javascript, weil ich keine Postbacks möchte. Der Code:
protected void gvwComments_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton lButton = ((LinkButton)e.Row.Cells[2].FindControl("lbtnExpand"));
Label label = ((Label)e.Row.Cells[2].FindControl("lblBody"));
lButton.Attributes.Add("onclick", string.Format("HideLabel('{0}'); return false;", label.ClientID));
}
}
function HideLabel(button) {
var rowObj = document.getElementById(button);
if (rowObj.style.display == "none") {
rowObj.style.display = "block";
}
else {
rowObj.style.display = "none";
}
}
Das Problem ist, dass, wenn ich das Etikett durch einen Klick auf die Schaltfläche einzublenden, Linkbutton verschoben wird ein etwas obere ist es ursprüngliche Position in der Zelle. Kann die Linkbutton-Position in der GridViews-Zelle beibehalten werden?
Das ist nicht gut, weil verstecktes Etikett mit viel Text leeren Raum in der Zelle erhalten wird, und das will ich nicht! –