获取materialize css中活动标签的ID

时间:2016-12-20 04:04:36

标签: javascript jquery css materialize

我知道如何使用jquery选择/激活(以编程方式)materializecss中的选项卡(如文档中所述):

$('ul.tabs').tabs('select_tab', 'tab_id');

但是当我点击按钮时如何使用javascript或jquery获取materializecss中的活动(选定)选项卡的id?

4 个答案:

答案 0 :(得分:1)

您可以使用活动类来获取当前活动选项卡。因此可以获取当前选项卡的ID。以下是演示

$(document).ready(function(){
    $('ul.tabs').tabs();
  });
$('#getID').click(function(){
  console.log("Active Tab:"+$(".active").attr('id'));
  console.log("Active Tab Div:"+$(".active").attr('href'));
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Compiled and minified CSS -->
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.8/css/materialize.min.css">

  <!-- Compiled and minified JavaScript -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.8/js/materialize.min.js"></script>
<div class="row">
    <div class="col s12">
      <ul class="tabs">
        <li class="tab col s3"><a href="#test1" id="1test">Test 1</a></li>
        <li class="tab col s3"><a class="active" href="#test2" id="2test">Test 2</a></li>
        <li class="tab col s3"><a href="#test4" id="4test">Test 4</a></li>
      </ul>
    </div>
    <div id="test1" class="col s12">Test 1</div>
    <div id="test2" class="col s12">Test 2</div>
    <div id="test3" class="col s12">Test 3</div>
    <div id="test4" class="col s12">Test 4</div>
  </div>
  
  <button id="getID">
  GetID
  </button>
  
  
  
  

答案 1 :(得分:0)

您可以使用jquery。由于活动标签将包含类active,您可以使用它来获取标签ID。

$(function(){
    $('#submit').click(function(){
           alert($(".active").attr('id'));
        });
    });

这里有一个工作小提琴 http://jsfiddle.net/UTux2/

答案 2 :(得分:0)

试试这个

 $("ul.tabs > li > a").click(function (e) {
    var id = $(e.target).attr("href").substr(1);
    window.location.hash = id;});
var hash = window.location.hash;
$('ul.tabs').tabs('select_tab', hash);

首先制作哈希ID,然后将其置于原位tab_id

答案 3 :(得分:0)

虽然上面的技术可能还可以,但是在materializecss中有官方的方法。

  $('ul.tabs').tabs({
    onShow: onShow,//Function to be called on tab Show event
    swipeable: false,
    responsiveThreshold: Infinity // breakpoint for swipeable
  });

    function onShow(tabOBJ){
        console.log(tabOBJ.selector);
    }

我希望这可以帮助你和其他人。