ラジオボタンをクリックしてブートストラップのドロップダウンを開こうとしていますが、音がするほどシンプルです。ラジオボタンで起動されたブートストラップデータトグルドロップダウン
ブートストラップによれば、ハイパーリンクまたはボタンdata-toggle="dropdown"
を使用してドロップダウンを開くことができます。 $('.dropdown-toggle').dropdown()
も使用できますが、トリガーにはまだdata-toggle="dropdown"
が必要です。
問題はラジオボタンがdata-toggle="dropdown"
を許可していないことと、自分のハイパーリンクタグ内にラジオオプションをラップしてトグルを追加すると、ドロップダウンが機能しますが、ラジオボタン自体ではなく、同時に。ラジオボタンはアクションを実行し、ドロップダウンを表示してセカンダリアクションを許可します。
私は単純な例を与え、私の問題を再現するためにコードを書き留めました。 CODEPENでは、ドロップダウンが機能していますが、ラジオボタンには「Hello Offender」は表示されません。 <a>...</a>
を削除した場合、ラジオボタンの機能は表示されますが、ドロップダウンは表示されません。どのようにして両者を動かすことができますか?
は、ここに私のコード
<div class="form-group widget-header-radio-group">
<div class="radio-group inline-radio">
<input id="individualForm" class="radio-custom " name="radio-group" type="radio" checked>
<label for="individualForm" class="radio-custom-label">Individual</label>
</div>
<div class="radio-group inline-radio">
<input id="businessForm" class="radio-custom" name="radio-group" type="radio">
<label for="businessForm" class="radio-custom-label">Business</label>
</div>
<div class="radio-group inline-radio">
<a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="true">
<input id="offenderForm" class="radio-custom" name="radio-group" type="radio">
<label for="offenderForm" class="radio-custom-label">Offender</label>
<ul class="dropdown-menu" id="dropdownMenu">
<li id="stateOff"><a href="#">State</a></li>
<li id="federalOff"><a href="#">Federal</a></li>
<li id="countyOff"><a href="#">County</a></li>
</ul>
</a>
</div>
</div>
<div id="indDemo" class=""> Hello Individual</div>
<div id="busDemo" class=""> Hello Business</div>
<div id="offDemo" class=""> Hello Offender</div>
$(document).ready(function() {
$('#busDemo').hide();
$('#offDemo').hide();
$('#individualForm').change(function() {
if (this.checked) {
$('#indDemo').show();
$('#busDemo').hide();
$('#offDemo').hide();
}
});
$('#businessForm').change(function() {
if (this.checked) {
$('#busDemo').show();
$('#indDemo').hide();
$('#offDemo').hide();
}
});
$('#offenderForm').change(function() {
if (this.checked) {
$('#offDemo').show();
$('#indDemo').hide();
$('#busDemo').hide();
}
});
});
あるCODEPEN here
感謝を参照してください!
:あなたがクリックされたアンカーは、あなたが探しているinput要素が含まれている場合しかし、あなたは親のdivとテストにイベントを委任することができます$( '。dropdown-toggle')。dropdown()関数 – happymacarts
を呼び出したラジオにハンドラを追加しました。葉巻はありません。ラジオ入力タイプ – LOTUSMS
の中で許可されていないデータトグルドロップダウンの依存関係があります。ラジオをdivにラップし、そのデータトグルをそのコンテナに追加するとどうなりますか? – happymacarts