我有三个linkbuttons
,当用户选择当前链接时,它应该是红色的。但目前它甚至使访问的链接也变红了,这是不应该的。有谁能帮帮忙吗?
<li>
<asp:LinkButton ID="lnkCat1" runat="server"
OnClick="lnkCat1_Click" CssClass="mylink"
OnClientClick="return changeColor();"></asp:LinkButton></li>
<script type="text/javascript">
function changeColor(e) {
e.style.color = "red";
}
}
</script>
试试下面的代码:
请先包含jquery
css.red {
color: red;
}
javascript: <script type="text/javascript">
function changeColor(e) {
$('.red').removeClass('red');
$(e).addClass("red");
}
</script>
这是原始的javascript代码,也就是说,你不需要像jQuery这样的库。
<li>
<asp:LinkButton ID="lnkCat1" runat="server"
OnClick="lnkCat1_Click" CssClass="mylink"
OnClientClick="return changeColor(this); return false;"></asp:LinkButton></li>
<script type="text/javascript">
function changeColor(e) {
e.style.color = "red";
}
</script>
这一行
OnClientClick="return changeColor(this); return false;"
将把link元素传递给javascript函数changeColor
,并立即传递给return false
,因此链接的默认动作(访问另一个页面)永远不会发生。
您的实际函数中也有一个额外的}
。
我会使用像Firebug或Chrome的开发工具,所以你可以查看javascript错误,因为他们出现