【问题标题】:Executing client-side script on link click在链接单击时执行客户端脚本
【发布时间】:2012-05-28 11:06:19
【问题描述】:

我需要我的网页在单击链接或按钮时打开一个窗口并启用一个禁用的按钮。 从我在这里的其他帖子上读到的内容来看,如果我尝试在 Page_load 中打开一个新窗口,大多数浏览器会认为它是一个弹出窗口并阻止它,所以我一直在尝试用 JS 做客户端。

目前,我正在尝试使用这样声明的链接:

Please click <a href="javascript:OpenDoc()">here</a> to open the document.

这会调用下面的JS:

    function OpenDoc() 
    {
        <%= btnSubmit.ClientID %>.Visible = true; 
        Window.Open('GetDocument.aspx') 
    }

不幸的是,JS 没有显示为“btnSubmit.Visible = true”,而是显示为“MainContent_btnSubmit.Visible = true”,这不起作用。

假设这是做我想做的最好的方式,我哪里错了?

【问题讨论】:

    标签: c# javascript asp.net


    【解决方案1】:

    您无法通过 javascript 更改可见性属性,但您可以使用以下代码代替它:

    var control = document.getElementById('<%=btnSubmit.ClientID %>');           
    control.disabled = true;  
    

    在这种情况下,按钮将被禁用,如果您需要隐藏按钮而不禁用它,请使用以下代码:

    var control = document.getElementById('<%=btnSubmit.ClientID %>');           
    control.style.display= "none"; 
    

    希望这对我对您问题的理解有所帮助

    【讨论】:

    • 我什至没有考虑过可见性,但使用 document.getElementByID 对我有用(就像使用 control.disabled 一样)。感谢您的帮助!
    猜你喜欢
    • 2012-06-29
    • 2010-12-09
    • 2015-07-17
    • 2018-05-25
    • 1970-01-01
    • 2016-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多