2012-01-06 15 views
0

1つの親「div」に3つの「ボタン」要素があるとします。 jQueryを使用してこれらのボタンに1,2,3または0,1,2のラベルを付けることができると仮定すると、クリックされたボタンの数を簡単に判別できますか?私はボタンが押されたときに、私は適切なテーブルを活性化させることができるように番号を知りたいのですがjQueryを使用してどのボタンが押されたかを確認してください

<div class="table-tabs"> 
    <button class="tab1 selected">Description</button> 
    <button class="tab2">Monitoring</button> 
    <button class="tab3">Change Logs</button> 
</div> 

はここにHTMLです。

+0

は私たちに意図されたHTMLを表示して、私たちはあなたを見ることができます – mcgrailm

+2

はい、あります。 HTMLの外観はどうですか?JavaScriptの外観はどうですか? –

答えて

3

.index()を使用すると、ボタンの番号(0に始まる)を取得できます。

$('.table-tabs button').click(function(){ 
    console.log($(this).index('.table-tabs button')); 
}); 

DEMO:http://jsfiddle.net/UPKgm/

それとも、あなたがclassを解析し、タブの数を取得するが、それはより多くの仕事を取ることができます。

$('.table-tabs button').click(function() { 
    var classes = $(this).attr('class').split(' '), 
     tabID; 
    $.each(classes, function() { 
     if (this.indexOf('tab') === 0) { 
      tabID = this.replace('tab', ''); 
      return false; 
     } 
    }); 
    console.log(tabID); 
}); 

DEMO:http://jsfiddle.net/UPKgm/1/

+0

それだけです!完璧!私はそれのような単純なものがあったことを知っている! – RyJ

0

これを試してみてください:ボタンをクリックする

$('.table-tabs button').click(function(){ 

var btn = $(this).html(); 

alert(btn); 

}); 
+0

これは基本的にボタンをフォーム要素ではなくタブとして使用しているので、実際は素晴らしい解決策です。理想的には、ボタンの値として数値を格納したくないのは、その属性がフォーム関連のデータに必要な場合があるからです。 – RyJ

+0

喜んで助けてください;-) –

0

だけキャプチャを。 :)

http://jsfiddle.net/MetalFrog/9dDy9/5/

編集:はあなたの例のHTMLに一致するように更新しました。

あなたは型ボタンのすべての入力を選択するために、jQueryのセレクタを使用し、その後のための機能を追加することができ 数は、入力の値に設定されているタイプのボタンの入力を有すると仮定
$(function(){ 
    $('.table-tabs button').click(function(){ 
     console.log($(this).text()); 
    }); 
}); 
+1

あなたのフィドルは動作しません。 ''は 'value'属性を持っていません。 –

+1

@Rocketしたがって、テキストへの変更。 :)リンクをつかむ前にフィドルの更新をヒットするのを忘れてしまった。 – MetalFrog

0

値を読み取るするイベントをクリックします。

HTML:

<div> 
    <input type="button" value="1" /> 
    <input type="button" value="2" /> 
    <input type="button" value="3" /> 
</div> 

ではJavaScript:

$(":input[type='button']").click(function() { 
     alert($(this).val()); 
    } 
) 

例:

関連する問題