2

如何获得div放置在母版页内的 a 的高度?

我可以设置高度如下:

((HtmlControl)this.Master.FindControl("sidebar")).Style.Add("height", "600px");

现在我正试图从我的div被叫中获得高度,我mainPage该怎么做?

4

2 回答 2

1

MasterPage.Master:

<div id="_test" style="height: 100px" runat="server"></div>

MasterPage.Master.cs:

public HtmlGenericControl test
{
    get { return this._test; }
}

任何其他cs文件:

string width = ((MasterPage)this.Master).test.style["height"];

编辑:如果您想获取动态创建的任何样式信息,您需要将此信息存储到隐藏字段中,因为您将无法通过在回发中调用 style["x"] 来检索数据。

Edit2:调整后的母版页名称。

于 2012-10-26T07:21:13.140 回答
1

您必须在客户端获取 div 的高度,因为每个客户端的呈现方式可能不同......

使用 jQuery,你可以做到

$("#sidebar").height();

但为此,您必须等待文件准备好。所以你可以把这一行放在ready函数中document

$(document).ready(function(){});

编辑

另一个解决方案是添加runat="server"到您的div

<div ID="sidebar" runat="server">...</div>

然后从您的代码中您可以执行类似的操作

HtmlGenericControl sb = this.form1.FindControl("sidebar") as HtmlGenericControl;
int sidebarHeight = sb.Height;
于 2012-10-26T07:13:42.017 回答