javascript - 如何将此元素传递给 javascript onclick 函数并向该单击的元素添加一个类

标签 javascript jquery html onclick

我有一个 html 导航代码如下

function Data(string) {
  //1. get some data from server according to month year etc.,
  //2. unactive all the remaining li's and make the current clicked element active by adding "active" class to the element
  $('.filter').removeClass('active');
  $(this).addClass('active');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row" style="padding-left:21px;">
  <ul class="nav nav-tabs" style="padding-left:40px;">
    <li class="active filter"><a href="#month" onclick="Data('month')">This Month</a></li>
    <li class="filter"><a href="#year" onclick="Data('year')">Year</a></li>
    <li class="filter"><a href="#last60" onclick="Data('last60')">60 Days</a></li>
    <li class="filter"><a href="#last90" onclick="Data('last90')">90 Days</a></li>
  </ul>
</div>

当用户点击任何标签时

  • 所有剩余的选项卡都应该处于非事件状态,
  • 并且当前元素/标签应该是事件的,

我上面的代码不工作。

  1. 如何让上面的代码生效?
  2. 我只想为此使用 javascript onclick。当用户单击选项卡时,有什么方法可以发送this(当前)对象吗?

最佳答案

使用此 html 获取被点击的元素:

<div class="row" style="padding-left:21px;">
    <ul class="nav nav-tabs" style="padding-left:40px;">
        <li class="active filter"><a href="#month" onclick="Data('month', this)">This Month</a></li>
        <li class="filter"><a href="#year" onclick="Data('year', this)">Year</a></li>
        <li class="filter"><a href="#last60" onclick="Data('last60', this)">60 Days</a></li>
        <li class="filter"><a href="#last90" onclick="Data('last90', this)">90 Days</a></li>
    </ul> 
</div>

脚本:

 function Data(string, el)
 {
     $('.filter').removeClass('active');
     $(el).parent().addClass('active');
 } 

关于javascript - 如何将此元素传递给 javascript onclick 函数并向该单击的元素添加一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19998711/

相关文章:

javascript - Swiper - 下一个和上一个按钮不起作用

html - 在设计布局 (CSS) 方面需要帮助

javascript - CKEDITOR ajax 帖子

javascript - css 媒体查询和 javascript

php - 在 PHP 中使用 CURL 将登录 POST 到远程 auth 函数/php 文件

javascript - 用于显示事件的日历(时间轴)小部件

javascript - 如何将多个 Jquery ID 传递给一个函数?

javascript - 如何在 Visual Studio Code 中显示 'console.log' 输出?

php - 用 JS 设置 cookie,用 PHP 问题读取

javascript - 自定义颜色选择器 TinyMCE