私はアプリケーションにbootstrap
要素を追加するのにreact-bootstrap
を使用しています。ユーザーがアイテムにタグを付けるために使用できる「ラベル」のリストを持つドロップダウンボタンを追加する必要があります。入力欄のドロップダウン
私の問題は、「カスタム」ラベルを追加できるように入力フィールドを追加することです。ここでは、(青い四角はチェックボックスです)現在、どのように見えるかです:
最初に私が試した:あなたがinput
要素をクリックしたとき
<Dropdown id="myDropdown">
<Dropdown.Toggle bsStyle="warning">Label as...</Dropdown.Toggle>
<Dropdown.Menu>
<li onSelect={...}>
<Checkbox onClick={...} checked={...} inline>Some label</Checkbox>
</li>
<li onSelect={...}>
<Checkbox onClick={...} checked={...} inline>Some other label</Checkbox>
</li>
<li><input /></li>
</Dropdown.Menu>
</Dropdown>
をしかし、これはdropdown
を閉じます。
私は、公式のドキュメント(「Custom Dropdown Components」と検索コードを検索)に表示されている例にわずかなバリエーションを実装しようとしました。これにより、input
をクリックして入力することができますが、要素の外側をクリックするとドロップダウンが終了しません。
TL; DR
は、どのように私は私はあなたがメニューの外側をクリックしたときにも閉じinput
フィールドをクリックすることを可能にするドロップダウンを達成することができますか?
EDIT:
は私の第2の実施のために生成されたHTMLの追加:
<div class="dropdown btn-group">
<button type="button" class="dropdown-toggle btn btn-warning"><i class="fa fa-check" aria-hidden="true"></i><!-- react-text: 153 --> <!-- /react-text --><!-- react-text: 154 -->Label as...<!-- /react-text --><!-- react-text: 155 --> <!-- /react-text --><span class="caret"></span></button>
<ul class="dropdown-menu">
<li><label class="checkbox-inline"><input type="checkbox" value="on"><span></span><!-- react-text: 162 --> Some label<!-- /react-text --></label></li>
<li><label class="checkbox-inline"><input type="checkbox" value="on"><span></span><!-- react-text: 167 --> Some other label<!-- /react-text --></label></li>
<li><label class="checkbox-inline"><input type="checkbox" value="on"><span></span><input type="text" value="" style="height: 17px;font-size: .9em;"></label></li>
<li role="separator" class="divider"></li>
<li role="presentation" class=""><a role="menuitem" tabindex="-1" href="#">Clear labels</a></li>
</ul>
</div>
コンパイルされたHTMLの内容を貼り付けることができますか? –
@JoshuaTerrill、確かなこと。 2つの実装のうちどれを試してみましたか? – Chris
2番目のボタンをクリックして入力を入力できますが、ドロップダウンは閉じません。 –