我有一个ASP.NET页面,其中包括标记和第三方控件(在Telerik控制的特定情况下),例如
<h1>Hello</h1>
<telerik:RadToolBar ID="toolbarCAD" runat="server" Skin="Web20" Height="30px" Width="300px" OnClientButtonClicked="OnClientButtonClicked">
<Items>
<telerik:RadToolBarButton runat="server" Text="Zoom In" ImageUrl="~/images/zoom_in.png" Value="cadZoomIn">
</telerik:RadToolBarButton>
</Items>
</telerik:RadToolBar>
如果安装了ActiveX控件,我只想显示它。从另一个问题我有一个Javascript函数(ActiveXOrNull)成功检测到这一点,所以现在我已经用我的标记替换了上面的代码:
<script type="text/javascript">
var obj = ActiveXOrNull('CADViewX');
if (obj == null) {
WHAT DO I DO HERE
}
</script>
如何在Javascript函数中包含原始标记?我可以“包含”另一个页面还是有其他方法可用?
答案 0 :(得分:1)
如果您将控件放在<div>
标记
<div id="telerickControl">
<telerik:RadToolBar.........
</telerick:RadToolBar>
</div>
然后在javacript函数内放置
var obj = ActiveXOrNull('CADViewX');
if (obj == null) {
document.getElementById("telerickControl").style.display = "block";
}
默认情况下,将div
设置为display: none
,然后在用户拥有ActiveX对象时将其显示给用户。
这将通过样式属性display
隐藏页面元素。但是,这仍将在页面上呈现控件,因此仍将呈现控件。
修改强>
Stilgar建议的更新答案。