从ASP.NET代码后台与iFrame通信

8
我发现了一个非常酷的页面,可以让你将Facebook连接到你的网站上:请点击这里
<iframe id="MyIframe" src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.EXAMPLE.com%2F&amp;layout=button_count&amp;show_faces=true&amp;width=100&amp;action=recommend&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:21px;" allowTransparency="true"></iframe>

我希望能够在我的页面中调用这个 iframe(我正在使用 ASP.NET),并且我希望能够根据变量设置其可见性,最重要的是我希望能够根据由变量构建的字符串更改 iframe 的 src,以便将 "www.EXAMPLE.com" 更改为基于页面位置的另一个 URL。

请看这个问题:https://dev59.com/FFHTa4cB1Zd3GeqPNwPb - Paul Michaels
1
它仍然没有告诉我如何在我的代码后端与iframe通信的答案..... - Etienne
1个回答

24

尝试添加属性runat =“server”。这样可以通过代码后台访问标签,从而让您根据变量设置其他属性。

<iframe id="MyIframe" runat="server" src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.EXAMPLE.com%2F&amp;layout=button_count&amp;show_faces=true&amp;width=100&amp;action=recommend&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:21px;" allowTransparency="true"></iframe>

这将通过名称为iframe在代码后端中让您访问它。然后,您可以编写类似以下语句来操作它:

MyIframe.Visible = true;

MyIframe.Attributes.Add("src", "http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.EXAMPLE.com%2F&amp;layout=button_count&amp;show_faces=true&amp;width=100&amp;action=recommend&amp;colorscheme=light&amp;height=21");

谢谢,这确实让我隐藏它了,但是我该如何更改src呢?它没有捕捉到src... - Etienne
1
@Etienne:尝试一下这行代码。如果Intellisense中没有你需要的属性,你可以使用.Attributes集合手动添加它们。 - Ryan Hayes
1
省了我很多麻烦!真不敢相信这个技巧不是更广为人知。 - MAW74656

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接