【问题标题】:Css & Asp:Button conflictCss & Asp:按钮冲突
【发布时间】:2009-05-12 15:08:33
【问题描述】:

我正在处理一个网页,有时我需要禁用一个 asp:button。

此页面使用具有以下类的 css 文件:

.pagerLinkDisabled
{
    display: none;
}

因此,每次我将按钮设置为禁用时,.net 都会使用 class="pagerLinkDisabled" 呈现它,并且该按钮不显示...

在页面加载时我尝试了这个:

myButton.Enabled=false;
myButton.Style.Add("display","static");

如何在不更改 css 文件的情况下解决此问题?

谢谢:)

编辑

澄清一下:

  • 按钮正在呈现,但当启用设置为 false 时,框架会将 class="pagerLinkDisabled" 添加到输入标记。

  • 此类是在我无法更改的 css 文件中定义的。

编辑2:

我的按钮是这样定义的:

<asp:Button runat="server" ID="myButton" Text="mytext" Enabled="false" />

正在渲染的 html 是:

<input type="submit" name="ctl00$ContentPlaceHolder$ctl00$myButton" value="mytext" id="ctl00_ContentPlaceHolder_ctl00_myButton" class="pagerLinkDisabled" />

【问题讨论】:

标签: asp.net css aspbutton


【解决方案1】:

我不确定,但在页面加载时尝试:

myButton.Visible = true;

【讨论】:

  • 不错的尝试,但没有...当 visible = false 时,按钮不呈现,在这种情况下,它正在呈现,但与 display:none 保持“不可见”来自 css
【解决方案2】:

你能不能只编辑 HTML 源代码 使按钮不使用该类?

或者它是在 HTML 的更高层次上定义的?例如在 BODY 标记处。

【讨论】:

    【解决方案3】:

    为什么不直接更改按钮上的类名?

    【讨论】:

    • 也试过了。如果我为按钮定义了一个 cssclass,则输入标签将使用类属性呈现并假定第一个..
    【解决方案4】:

    你有没有尝试过这样的事情:

    myButton.Attributes.Add("Style","display:block !important");
    

    【讨论】:

    • 这样做会使按钮出现,但已启用...我已将行放在 myButton.Enabled = false 的下方
    【解决方案5】:

    编辑这对我有用。

    myButton.Style["display"] = "block !important";
    myButton.Style["disabled"] = "disabled";
    

    【讨论】:

    • 检查更新,它对我有用。如果可能的话,我宁愿只更新按钮上的 CSSClass 属性。
    • 那么我们看不到的其他事情正在发生。您的输入元素是否具有 disabled='disabled' 属性?其他东西一定是冲突的,即使是单一的 lb.Style["display"] = "block !important";在定义了单个 CSS 类的空白页面上工作正常。将标记添加到问题中,我可能会提供更多帮助。
    • 我不确定您使用的是什么框架。默认情况下,ASP 不添加该 CSS 类,可能有其他东西与之冲突。
    猜你喜欢
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 2020-10-29
    • 2019-08-07
    • 2014-04-18
    相关资源
    最近更新 更多