【问题标题】:ASP.NET Change link button color when clicked without post-back or update panelASP.NET 在没有回发或更新面板的情况下单击时更改链接按钮颜色
【发布时间】:2011-11-25 17:56:57
【问题描述】:

在一个 asp.net 页面中,我有一个链接按钮列表:

<asp:LinkButton ID="LinkButton1" runat="server" OnClick="Link_Click">Link 1</asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" OnClick="Link_Click">Link 2</asp:LinkButton>
<asp:LinkButton ID="LinkButton5" runat="server" OnClick="Link_Click">Link 3</asp:LinkButton>

我将它们用作网站上更新面板的触发器。 当用户单击链接时,页面上会加载一个控件。

我想要的是这个:

当用户点击链接时,该链接的颜色会发生变化,因此我们可以知道最后点击的是哪个链接。

我想在没有回发或更新面板的情况下执行此操作。那么有没有办法通过javascript做到这一点?或其他解决方案?

感谢您的帮助

【问题讨论】:

    标签: javascript asp.net linkbutton


    【解决方案1】:

    JAVASCRIPT:

    <script>
        function changeColor(e) {
            e.style.color = "red";
            return false;
        }
    </script>
    

    HTML:

    <asp:LinkButton ID="LinkButton1" OnClientClick="return changeColor(this);" runat="server">LinkButton</asp:LinkButton>
    

    祝你好运!

    【讨论】:

      【解决方案2】:

      当然,JavaScript 是有办法的。您可以将一个事件连接到您的LinkButtons 的OnClientClick 属性并运行一些客户端代码。

      您可能希望为该按钮的两种状态创建一些 CSS。为按钮分配新类比使用 JavaScript 更改所有样式更容易。

      如果你愿意使用像jQuery 这样的库,那真的很容易:

      1. 为每个按钮分配一个匹配的 CSS 类“A”。

        <asp:LinkButton ID="Button1" CssClass="button button-off" runat="server" />
        <asp:LinkButton ID="Button2" CssClass="button button-off" runat="server" />
        
      2. 创建一个“关闭”状态的“B”CSS 类和“开启”状态的“C”类。

      3. 为每个具有“A”类的按钮分配一个点击处理程序。像这样的东西(未经测试):

        $('.button').click(function() {
            $('.button').removeClass('button-on');
            $(this).addClass('button-on');
        });
        

      上面的点击处理程序应该能够从所有具有“A”类的按钮中清除“B”类,并将“C”类分配给被点击的按钮。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-06-11
        • 1970-01-01
        • 1970-01-01
        • 2021-07-07
        • 2021-05-28
        • 2019-04-14
        • 1970-01-01
        相关资源
        最近更新 更多