在ASP.NET中,当单击LinkButton时分配CSS类。

3

假设页面上有3个链接按钮:

<asp:LinkButton ID="LB1" runat="server" CssClass="regular" OnClick="LB1_Click">
  Today
</asp:LinkButton>
<asp:LinkButton ID="LB2" runat="server" CssClass="regular" OnClick="LB2_Click">
  Today
</asp:LinkButton>
<asp:LinkButton ID="LB3" runat="server" CssClass="regular" OnClick="LB3_Click">
  Today
</asp:LinkButton>

我希望在单击链接按钮时使用CSS突出显示它,然后在单击另一个链接按钮时删除其CSS(即)我想显示活动链接按钮。 有什么建议。


只是为了澄清“活动链接”部分 - 因为您没有在用户下次单击按钮之前删除更改的 CSS,所以更改的样式实际上会指示用户执行的最后一个操作 - 这就是您所说的“活动链接”吗? - Jagmag
@In Sane 非常准确,那正是我想要的。 - ACP
2个回答

2

我正在使用jquery-ui,并为每个按钮(input type = submit或a href)分配一个类abtn

在页面加载时,我执行以下操作:

function dobuttons() {
        $(".abtn").hover(
            function () {
                $(this).addClass("ui-state-hover");
            },
            function () {
                $(this).removeClass("ui-state-hover");
            }).bind({

                'mousedown mouseup': function () {
                    $(this).toggleClass('ui-state-active');
                }

            }).addClass("ui-state-default").addClass("ui-corner-all")
            .bind('mouseleave', function(){$(this).removeClass('ui-state-active')});
    }

您可以在这里查看实时示例 http://mrgsp.md:8080/a/Dossier/Create


1
在 Page_Load 中,您将所有链接按钮的 CSS 类设置为默认类。
LB1.CssClass = "StandardClass";
LB2.CssClass = "StandardClass";

....

在每个LinkButton的Btn_Click事件中,将其css类设置为"Active" css。
例如:如果单击LB1,则在LB1_Click中。
LB1.CssClass = "ActiveClass";

这似乎很简单。希望我没有误解你的问题。


@Pandiya --- 哎呀!我就知道这不可能是那么简单的事情!!我不能帮你解决Jquery的问题,但或许Omu的回答可以帮到你!另外,也许将JQuery添加到标签列表中——这样不会让像我这样的相对新手感到困惑!! :-) - Jagmag

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接