【问题标题】:Showing button on jquery page load event is not working在 jquery 页面加载事件上显示按钮不起作用
【发布时间】:2020-01-23 17:40:43
【问题描述】:

我在 jquery 页面加载事件上显示按钮,但它不起作用。页面渲染后不可见。

如果我在页面加载事件后面的代码中设置可见性,它工作正常。

jQuery

function pageLoad() {
   $('#btnSwitchDistributor').css({ 'visibility': 'visible', 'display': 'inline-block' });
}

HTML

<asp:Button ID="btnSwitchDistributor" runat="server" Text="Switch Distributor" Visible="false" />

【问题讨论】:

    标签: c# jquery asp.net


    【解决方案1】:

    According to MSDN,当您在服务器端代码中设置Visible="false" 时,该元素根本不会呈现给客户端。这意味着您的按钮在结果页面上不是“不可见的”,它在结果页面上不存在。没有 JavaScript 代码可以与不存在的元素交互。

    听起来您想将 style 应用于控件:

    <asp:Button ID="btnSwitchDistributor" runat="server" Text="Switch Distributor" style="display:none;" />
    

    除此之外,这里有两个潜在的问题,我不一定能从问题的内容中确认,但你会想要检查...

    1. 您要查找的ID 值是服务器端对象的ID。这个不一定是生成的 HTML 元素的客户端 id。检查页面源以查看客户端id。如果它不同,那么您可能需要使用the ClientID property 显式设置它。
    2. 你有没有在你的 JavaScript 代码中调用pageLoad()?如果没有,那么,你需要这样做。我假设在the document.ready event handler?对于 jQuery,可能很简单:$(pageLoad)

    【讨论】:

      【解决方案2】:

      只需删除可见的 html 属性和 JQuery css。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-21
        • 1970-01-01
        • 2016-07-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多