繁体   English   中英

单击没有后退或更新面板时的ASP.NET更改链接按钮颜色

[英]ASP.NET Change link button color when clicked without post-back or update panel

在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:

<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>

祝好运!

当然,JavaScript有办法。 您可以将事件连接到LinkButtonOnClientClick属性,然后运行一些客户端代码。

您可能想为该按钮的两种状态创建一些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”类分配给所单击的按钮。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM