使用JavaScript更改ASP.NET标记的存在

我有一个带有asp:开关的ASP.NET网页,这是不明显的。 由于没有提供给网页,因此无法用JavaScript对其进行转换。

我该怎么做才能解决这个问题?

0
2019-05-18 21:31:32
资源 分享
答案: 5

如果等到网页填满,然后设置开关显示屏为无,则需要运行。 之后,你可以在后来的因素中使它变得明显。

0
2019-05-21 04:37:07
资源

如果您需要在客户端进行调整,则无法在服务器端使用Visible构建。 相反,将其CSS显示设计设置为“无”。 举个例子:

<asp:Label runat="server" id="Label1" style="display: none;" />

然后,您可以在客户方面明白:

document.getElementById('Label1').style.display = 'inherit';

你可以再次隐藏它:

document.getElementById('Label1').style.display = 'none';

请记住,在技术方面,可能存在ClientID比“Label1”更复杂的问题。 如果它们不同,您需要使用带有getElementById的ClientID,而不是服务器端ID。

0
2019-05-21 04:33:21
资源

确保Visible建筑物准备就绪,或者控件不会提供给网页。 之后,您可以使用手稿进行调整。

0
2019-05-21 04:30:49
资源

继续做什么 戴夫沃德 声称:

  • 你不能设置 可见 由于肯定不会提供控制这一事实而导致错误。
  • 你需要利用 样式 建立它是 显示屏 没有

页面/控件布局

<asp:Label runat="server" ID="Label1" Style="display: none;" />

<asp:Button runat="server" ID="Button1" />

代码背后

在装载区域的某处:

Label label1 = (Label)FindControl("Label1");
((Label)FindControl("Button1")).OnClientClick = "ToggleVisibility('" + label1.ClientID + "')";

Javascript文档

function ToggleVisibility(elementID)
{
    var element = document.getElementByID(elementID);

    if (element.style.display = 'none')
    {
        element.style.display = 'inherit';
    }
    else
    {
        element.style.display = 'none';
    }
}

在培训课程中,如果您不打算仅仅在显示按钮/标签之后切换,则根据需要重新调整javascript方法。

下面的关键因素是您需要将有关您要在客户端调整的控件的ClientID的详细信息发送到javascript文档,或者设置国际变量,或者通过我的实例中的函数参数。

0
2019-05-19 23:33:46
资源

试试这个。

<asp:Button id="myButton" runat="server" style="display:none" Text="Click Me" />

<script type="text/javascript">
    function ShowButton() {
        var buttonID = '<%= myButton.ClientID %>';
        var button = document.getElementById(buttonID);
        if(button) { button.style.display = 'inherit'; }
    }
</script>

不要使用Web服务器端代码来执行此操作,因为这肯定会要求回发。 与使用Visibility =“不正确”相反,您可以简单地设置隐藏开关的CSS构建。 之后,在javascript中,每当您打算再次显示该开关时,请切换回该建筑物。

如果交换机位于命名容器控件内,则可以使用ClientID,因为它可以与Web服务器ID不同。 这些包括多种类型的面板。

0
2019-05-19 22:51:31
资源