单击时如何在链接中添加和删除类名?

时间:2015-05-24 12:15:46

标签: javascript jquery css ruby-on-rails

我想在我的rails应用中的表格中切换2个链接(send_emailemail_sent)的可见性。两个链接都在同一个单元格内。

<table >
<% @applications.each do |application| %>
 <tr>
  <td>
   <a href="mailto:grant@example.com" class="send_email">Invite for an interview</a>

   <a href="" class="email_sent hidden">Undo</a>
  </td>
 </tr>
<% end %>
</table>

在我的CSS中我有

.hidden{display: none;}

这是我的javascript

<%= javascript_tag do %>
 $(function(){
  $('.send_email > a').click(function(){
   // add the hidden class to send_email
   // remove the hidden class from the next email_sent link
  });
  $('.email_sent > a').click(function(){
   // add the hidden class to email_sent
   // remove the hidden class from the previous sent_email link
  });
 });
<% end %>

2 个答案:

答案 0 :(得分:4)

您只需使用jQuery中的removeClass()addClass()

Remove Class docs.

Add Class docs.

答案 1 :(得分:0)

你做错了。 $('.send_email > a')表示您对锚的父元素有send_email个类。 $('a.send_email')是选择班级锚点的正确方法。

我会像这样使用hide()show()

$('a.send_email').click(function(){
  $(this).hide();
  $('.email_sent').show();
});

$('a.email_sent').click(function(){
  $(this).hide();
  $('.send_email').show();
});