我试图获取代码隐藏中iframe2的第二个iframe的id来添加一些css样式。这是我的HTML:
if(getActivity() instanceof YourActivityWhichPassesData){
yourValue = getArguments().getString(BUNDLE_VALUE_KEY,null);
}
由于某些原因,我无法在C#中获取iframe ID。我该怎么办呢?
答案 0 :(得分:0)
访问iframe
确保将runat="server"
属性添加到<iframe>
:
<iframe id="iframe2" runat="server"></iframe>
这样就可以通过FindControl()
方法在代码隐藏中访问它:
// Access your iframe
var iframe = FindControl("iframe2");
iframe.Style.Add("border", "2px solid red");
或直接使用其指定的id
:
iframe2.Style.Add("border", "2px solid red");
关于样式
您提到您明确尝试设置此元素的样式。如果是这种情况,您应该使用CSS而不是在<iframe>
元素本身上设置内联样式。
例如,您可以应用样式来定位该元素:
<style type='text/css'>
#iframe {
/* Place your styles here (i.e. border: 4px solid red, etc.) */
}
</style>
值得注意的是,实际样式化<iframe>
只会对元素本身进行样式化,因为在其中呈现的内容在元素中基本上是“沙盒化”的,并且不受某些元素的影响。指定的样式。
答案 1 :(得分:0)
将IFrame更改为runat =&#34; server&#34;然后你可以在服务器端找到它。
<iframe ID="MyIframe" src="" runat="server"></iframe>
您可以在C#中设置设置项目。
MyIframe.Attributes["src"] = Page.ResolveClientUrl("~/ThisOtherPage.aspx");
MyIframe.Attributes.Add("style", "cursor:pointer;");