我目前正在尝试在单击按钮时更改标签的可见性。该标签最初是隐藏的,将在单击按钮后出现。
我尝试过使用 DevEx 控件和 SetVisible() 函数。该功能有效,但如果按照我的情况首先通过 css 呈现标签“显示:无”,则它什么都不做。
我也曾尝试使用 ASP 标签并在点击时更改显示属性,但似乎还是没有任何反应。
风格
.dxd
{
display: none;
}
JavaScript
<script type="text/javascript">
function fncShow(s, e) {
//show devex label
lblTest.SetVisible(true);
//show ASP label
document.getElementById("lblASP").style.display = 'block';
}
</script>
正文
<dx:ASPxButton runat="server" ID="btnTest" Text="Show" Width="100px" AutoPostBack="false">
<ClientSideEvents Click="fncShow" />
</dx:ASPxButton>
<dx:ASPxLabel runat="server" ID="lblTest" Text="Test label" ClientInstanceName="lblTest" CssClass="dxd"></dx:ASPxLabel>
<asp:Label runat="server" ID="lblASP" Text="Test label 2" CssClass="dxd"></asp:Label>
我已经用尽了很多方法来尝试让任一控件正常工作,但都没有成功。在这一点上,我很想知道是否可以先让标签不可见,如果可以的话,如何使用这两个控件来实现。我是 JS 的新手,所以也许我遗漏了一些东西,但所有的例子都没有结果。任何帮助将不胜感激。
最佳答案
原来我遗漏了一些小的设置来使所有这些组合在一起。
在 DevEx 控件上有一个名为 ClientVisible
的属性,将其设置为 false
以便最初隐藏对象。之后就可以自由使用label.SetVisible()
来显示和隐藏了。
在 ASP 标签上,Kevin 认为 ClientIDMode
需要设置为 static
是正确的。一旦设置为 static
,ID 就不会改变,并且可以使用 document.getElementByID() 更改
或 display
和 visibility
属性.style.visiblitystyle.display
,随您喜欢。
关于javascript - 使用 JavaScript 的 ASP/ASPX 标签可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52063799/