TwitterBootstrapチェックボックスグループのグループが複数あります。チェックボックスボタンのいずれかがクリックされたときに、すべてのアクティブな(つまり、Bootsrtapが「アクティブな」クラスを追加する)ボタンのハッシュを作成したいと思います。数回クリックした後、htmlがそのようになっていると仮定します。
<div id="horizontal" class="btn-group" data-toggle="buttons-checkbox">
<button class="btn active" data-hposition="1">Left</button>
<button class="btn" data-hposition="2">Middle</button>
<button class="btn active"data-hposition="3">Right</button>
</div>
<div id="vertical" class="btn-group" data-toggle="buttons-checkbox">
<button class="btn" data-vposition="1">Top</button>
<button class="btn active" data-vposition="2">Center</button>
<button class="btn active" data-vposition="3">Bottom</button>
</div>
私はたった1つのdivで単純に始めましたが、正しい結果が得られません:
<script>
$('#horizonatal').click( function(){
var paramsHash = {};
var hids = [];
$('.active').each( function() {
paramsHash.hids.push($(this).data('hposition'));
})
console.log(paramsHash.hids);
})
</script>
上記のhtmlを使用して、「右」をクリックすると[1,undefined]
、コンソールに次のようなものが表示されます。
最終的に、私は次のように投稿するためのハッシュを取得したいと思います{ {'hids', [ 1, 3 ]}, {'vids', [ 2, 3, ]} }
jsfiddleを試しましたが、ボタンがアクティブになっていないため、Bootstrapを正しくロードしていないと思います。