Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript的ASP/ASPX标签可见性_Javascript_C#_Asp.net_.net_Devexpress - Fatal编程技术网

使用JavaScript的ASP/ASPX标签可见性

使用JavaScript的ASP/ASPX标签可见性,javascript,c#,asp.net,.net,devexpress,Javascript,C#,Asp.net,.net,Devexpress,我当前正在尝试更改单击按钮时标签的可见性。标签最初是隐藏的,并将在单击按钮后显示 我尝试过使用DevEx控件和SetVisible()函数。该函数可以工作,但是如果标签首先通过css呈现为“display:none”,就像我在我的情况下希望的那样,那么它什么也不做 我还尝试使用ASP标签,并在单击时更改显示属性,但再次似乎什么也没有发生 风格 JavaScript <script type="text/javascript"> function fncShow(s, e) {

我当前正在尝试更改单击按钮时标签的可见性。标签最初是隐藏的,并将在单击按钮后显示

我尝试过使用DevEx控件和SetVisible()函数。该函数可以工作,但是如果标签首先通过css呈现为“display:none”,就像我在我的情况下希望的那样,那么它什么也不做

我还尝试使用ASP标签,并在单击时更改显示属性,但再次似乎什么也没有发生

风格

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>

功能fncShow(s、e){
//显示devex标签
lblTest.SetVisible(真);
//显示ASP标签
document.getElementById(“lblASP”).style.display='block';
}
身体



我已经用尽了很多方法试图让其中一个控件工作,但都没有成功。在这一点上,我想知道是否有可能首先让标签不可见,以及是否有可能使用这两个控件实现。我是JS新手,所以可能我遗漏了一些东西,但所有的例子都是徒劳的。任何帮助都将不胜感激

结果是,我缺少了一些小设置,无法将所有这些结合起来

在DevEx控件上有一个名为
ClientVisible
的属性,将该属性设置为
false
,以便最初隐藏对象。之后,您可以自由使用
label.SetVisible()
来显示和隐藏它


在ASP标签上,Kevin正确地指出了
clientdmode
需要设置为
static
。一旦设置为
static
ID将不会更改,并且可以使用
document.getElementByID().style.visibility
style.display
,无论您喜欢什么,都可以更改
display
visibility
属性

显示!=能见度。尝试设置
可见性:隐藏而不是
显示:无。已经尝试过,但不起作用。同样值得注意的是,DevEx标签将保持不可见,并且显示属性将更改。在
fncShow
函数中定义的
lblTest
在哪里?您确定标签ID在呈现时仍然是
lblASP
吗?lblTest不需要定义,它有一个ClientInstanceName属性,可以引用它而不是按ID检索它,DevEx就是这样设计的。再一次,我让SetVisible()正常工作,我有两个显示/隐藏按钮,它可以正常工作,直到您将初始CSS设置为隐藏它。至于ASP标签的ID,我不确定它是否在改变,这是有原因的吗?如果你引用的是ID,IIRC中有一个ASP属性,比如
ClientID
或其他什么,可以防止ID被盗用。(我已经做了几年的.NET开发了。)看起来还有一个
clientdmode
属性,您可以将其设置为
static
<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>