Vueを使い始めたばかりです(本当にうれしいです)。Vueブーストラップドロップダウンでスタイル機能を選択
私は隠しフォームを作成するために使用しているブートストラップ4のドロップダウンを持っています(ドロップダウンアイテムをクリックすると、下のフォームにデータ値が保存されます)。
これは、通常の選択/オプションのドロップダウンを私が望むように行うことができないためにのみ行われます。
私はvueを実装しようとするまで、これはうまくいきました。選択したコンポーネントを直接使用していないので、vue select documentationで提供されているソリューションは機能していないようです。
ご協力いただければ幸いです。事前に
おかげ
HTML
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle device-dropdown" type="button" data-toggle="dropdown" aria-haspopup="true"
aria-expanded="false">
All Devices
</button>
<div class="dropdown-menu" aria-labelledby="device-dropdown">
<a class="dropdown-item" href="#" data-value="all">All Devices</a>
<a class="dropdown-item" href="#" data-value="imac">iMac</a>
<a class="dropdown-item" href="#" data-value="macbook">MacBook</a>
<a class="dropdown-item" href="#" data-value="ipad">iPad</a>
<a class="dropdown-item" href="#" data-value="iphone">iPhone</a>
</div>
<select name="device" class="hidden-device-dropdown">
<option></option>
</select>
</div>
JS
// copies the selected dropdown element into a hidden select in the form
$('.dropdown-menu').click(function (e) {
e.preventDefault();
// change button text to selected item
var selected = $(e.target);
$(".device-dropdown").text($(selected).text());
// change option value (inside select) to selected dropdown
var form = $("select.hidden-device-dropdown").children("option");
$(form).val(selected.data("value"));
});
編集:v-on:click="device = '...'"
のように見えるかもしれませんが、私は後に機能しているかもしれませんが、これを行う良い方法ですか?多くのコードを複製しているようです。
具体的なコード例よりも、問題に近づく最善の方法について質問しました:) – Ollie