这个问题是关于访问 div 并设置它的高度。这个问题的答案是正确的。
现在我想问我如何访问不同webform的div?
有两个webforms,例如Default1.aspx和Default2.aspx,webform Default1.aspx在一个Iframe里面,然后Iframe在Default2.aspx的div里面。在我的 webform Default1.aspx 中,我有一个按钮,按钮事件后面的代码是设置 Default2.aspx 的 div 的大小。希望你能理解
这个问题是关于访问 div 并设置它的高度。这个问题的答案是正确的。
现在我想问我如何访问不同webform的div?
有两个webforms,例如Default1.aspx和Default2.aspx,webform Default1.aspx在一个Iframe里面,然后Iframe在Default2.aspx的div里面。在我的 webform Default1.aspx 中,我有一个按钮,按钮事件后面的代码是设置 Default2.aspx 的 div 的大小。希望你能理解
我认为您不能直接访问该 div,但您可以通过存储会话变量来产生类似的效果。在具有要更改的 div 的 Web 表单中,您将使用 Page_Load 事件处理程序来检查该会话变量是否存在,然后使用该变量的值设置 div 的高度。
编辑
我创建了一个测试页面,以查看此方法是否适用于 iframe,并且似乎确实如此。我使用的代码是:
在主页
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Session("divHeight") = "100px"
End Sub
在二级页面
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Session("divHeight") Is Nothing Then
divTest.Style.Add("height", "50px")
Else
divTest.Style.Add("height", Session("divHeight"))
End If
End Sub
这导致按下按钮时有问题的 div 的高度增加了一倍。
只是为了另一种方法。
这就是我让它工作的方式,你只需要一些javascript:
表格1:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<script>
function changeDiv() {
frames["myiFrame"].document.getElementById("divInFrame").setAttribute("style", "height:1000px");
}
</script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<input id="Button1" type="button" value="button" onclick="changeDiv();" />
<iframe src="Default2.aspx" style="border: 0px #FFFFFF none;" name="myiFrame" id="myiFrame"
scrolling="no" frameborder="1" marginheight="0px" marginwidth="0px" height="60px"
width="468px"></iframe>
</form>
</body>
</html>
表格2:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div id="divInFrame">
I am the second form!
</div>
</form>
</body>
</html>
所以基本上这条线负责做所有事情:
frames["myiFrame"].document.getElementById("divInFrame").setAttribute("style", "height:1000px");
请注意,使用这种方法,您不一定需要从 Vb 设置高度,就像在上一个问题中一样,您只需要一个普通的 HTML div。
您可以在加载 Web 表单时访问 div,但无法从其他 Web 表单访问它,因为当加载 Web 表单时,它会将所有内容下载到您的浏览器(客户端),而另一个 Web 表单将位于服务器端。