我有这样的代码:为什么我的<a>标签选择不起作用?
<div class="list-group" id="generalView">
<a href="" id="today" onclick="displayData()" class="list-group-item" data-toggle="modal" data-target="#displayDiary">
<h4 class="list-group-item-heading">Today's Diary</h4>
</a>
<a href="" class="list-group-item">
<h4 class="list-group-item-heading">Last Week's Diaries</h4>
</a>
<a href="" class="list-group-item">
<h4 class="list-group-item-heading">Last Month's Diaries</h4>
</a>
</div>
$('#generalView > a').click(function(e) {
e.preventDefault();
$('#generalView > a').removeClass('active');
$(this).addClass('active');
});
我想点击一个<a>
标签,但我选择不工作时添加一个类active
。我选择错了吗?我已经尝试给每个<a>
元素分配一个类,然后尝试选择该类,但是不能很好地工作。这是为什么发生?
您的代码似乎好工作:HTTPS: // jsfi ddle.net/ejfxa4jL/。请注意,您需要对传递给处理函数的事件调用'preventDefault()',否则页面将被传输并且状态将会丢失。如果你想保持页面之间的状态,那么你需要将选择存储在某个地方,例如。在URL中作为querystring参数,'localStorage','sessionStorage',一个cookie,服务器端会话或数据存储。 –
你正在编辑的问题比我能写出的答案更快 - 在某一点上它没问题 - 就我所见,选择器没有问题。唯一的问题是,你可能想为'addClass'调用'$(this)'而不是每个''标签都是'#generalView'的子标签。如果你有任何疑问,只需在控制台上测试它们页面你不确定 - 不需要使用提醒:)。道歉,如果这是现在不太相关,但编辑! – Brian
这听起来很合理,我试过但没有奏效。里面的代码不工作。我甚至试图只选择''标签,并且不起作用。看起来像即使我打电话'preventDefault()'代码只是不工作 –