C# 使用LinkButton的onClick peropery使asp.net控件在客户端可见

C# 使用LinkButton的onClick peropery使asp.net控件在客户端可见,c#,javascript,asp.net,ajax,C#,Javascript,Asp.net,Ajax,我在UserControl页面中使用ASP.Net控件,如(文本框,下拉列表),所有控件都是不可见的(编辑)。在同一页面中有一个用于编辑的链接按钮。我想让它在客户端可见。谁能建议我该怎么做。或任何其他方法。要使用Javascript执行此操作,您需要删除LinkButton的OnClick属性,并使用OnClientClick属性调用Javascript函数: <asp:LinkButton ID="lb_link_button" runat="server" Text="Click Me

我在UserControl页面中使用ASP.Net控件,如(文本框,下拉列表),所有控件都是不可见的(编辑)。在同一页面中有一个用于编辑的链接按钮。我想让它在客户端可见。谁能建议我该怎么做。或任何其他方法。要使用Javascript执行此操作,您需要删除LinkButton的OnClick属性,并使用OnClientClick属性调用Javascript函数:

<asp:LinkButton ID="lb_link_button" runat="server" Text="Click Me" OnClientClick="return ToggleShowHide()"/>

下面是一个相应的Javascript函数,用于使用其style.display属性显示/隐藏名为my_control的控件:

<script type="text/javascript">        
    function ToggleShowHide() {
        var control = document.getElementById("<%= my_control.ClientID %>");
        if (control.style.display == "none") { control.style.display = "block"; }
        else { control.style.display = "none"; }
        return false;
    }
</script>

函数ToggleShowHide(){
var control=document.getElementById(“”);
如果(control.style.display==“none”){control.style.display=“block”}
else{control.style.display=“none”;}
返回false;
}
您可以引用控件以各种方式显示/隐藏,这只是一个简单的示例

注意,要设置可见/不可见的控件不能将其visible属性设置为false,而应使用display:none声明它们;风格如下:

<asp:Control runat="server" ID="my_control" Visible="true" style="display:none;"/>

要使用Javascript执行此操作,您需要删除LinkButton的OnClick属性,并使用OnClientClick属性调用Javascript函数:

<asp:LinkButton ID="lb_link_button" runat="server" Text="Click Me" OnClientClick="return ToggleShowHide()"/>

下面是一个相应的Javascript函数,用于使用其style.display属性显示/隐藏名为my_control的控件:

<script type="text/javascript">        
    function ToggleShowHide() {
        var control = document.getElementById("<%= my_control.ClientID %>");
        if (control.style.display == "none") { control.style.display = "block"; }
        else { control.style.display = "none"; }
        return false;
    }
</script>

函数ToggleShowHide(){
var control=document.getElementById(“”);
如果(control.style.display==“none”){control.style.display=“block”}
else{control.style.display=“none”;}
返回false;
}
您可以引用控件以各种方式显示/隐藏,这只是一个简单的示例

注意,要设置可见/不可见的控件不能将其visible属性设置为false,而应使用display:none声明它们;风格如下:

<asp:Control runat="server" ID="my_control" Visible="true" style="display:none;"/>


通常,编辑按钮会导致回发,您可以在其中设置其他控件Visible=TrueThanx,是的,这是回发。因此,我需要一些东西客户端,不会发回。我有20多个控件,可以单独编辑。所以我需要一个客户端函数来应用onClick事件。有什么办法吗???你试过使用功能吗?将控件封装到中可以帮助您打开编辑按钮来执行客户端调用,而不是通常的回发。您需要重新构建页面,使其能够基于Ajax调用和客户端内容工作。这对于您的工作来说是一种干净的方式,但对于您的问题,我认为是否有办法满足您的需要将是痛苦的,并有许多缺陷:)通常,编辑按钮将导致回发,您可以在其中设置其他控件Visible=TrueThanx,是的,这是回发。因此,我需要一些东西客户端,不会发回。我有20多个控件,可以单独编辑。所以我需要一个客户端函数来应用onClick事件。有什么办法吗???你试过使用功能吗?将控件封装到中可以帮助您打开编辑按钮来执行客户端调用,而不是通常的回发。您需要重新构建页面,使其能够基于Ajax调用和客户端内容工作。这对于您的工作来说是一种干净的方式,但对于您的问题,我认为是否有办法满足您的需要会很痛苦,而且会有很多缺陷:)