質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Q&A

解決済

1回答

1956閲覧

vue-multiselectを利用し、submitでPOST送信したい

退会済みユーザー

退会済みユーザー

総合スコア0

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

0グッド

2クリップ

投稿2021/02/06 22:53

vue-multiselectを利用し、複数選択フォームを作成しています。
https://vue-multiselect.js.org/#sub-tagging

submitでPOST送信したいのですが、どうしたら良いでしょうか?

selectの場合、

html

1<select> 2<option value="1">A</option> 3<option value="2">B</option> 4</select>

と書けば、1とか2という値が渡されると思います。

それと同じように、vue-multiselectを使って、

<option value="1">A</option> <option value="2">B</option> <option value="3">C</option> <option value="4">D</option> <option value="5">E</option> のように1、2、3、4、5の値を渡したいです。(フォームに表示されるのは、A、B、C、D、Eです。)

下記のサイトには、「1つ注意点としては、selectタグを操作している訳では無いので、POST値で飛ばす時にはinput=hiddonなどにデータを持たせる必要があります。」とあるのですが、そこが良く分かりません。
https://www.kabanoki.net/4224/

現状下記のように書いています。

html

1<form method="post"> 2 <div id="app"> 3 <multiselect 4 v-model="selected" 5 :options="options" 6 :multiple="true" 7 :close-on-select="true" 8 placeholder="choice tags"> 9 </multiselect> 10 </div> 11 <button type="submit">登録</button> 12</form> 13 14<script> 15 Vue.component('multiselect', window.VueMultiselect.default) 16 new Vue({ 17 el: "#app", 18 data: { 19 selected: ['A', 'B'], 20 options: ['A', 'B', 'C', 'D', 'E'] 21 }, 22 }) 23</script>

どのように記載すべきか、ご教示頂けましたらありがたいです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

以下のように記述すれば、selectImtes: A,Bというように送信することができます。
inputタグhiddenで画面上は表示しないようにしvalueで選択中(selected)のアイテムを持ちます。
※ nameで送信したい任意の項目名を指定できます。例ではselectItemsとしました。

html

1 <form method="post"> 2 <div id="app"> 3 <multiselect 4 v-model="selected" 5 :options="options" 6 :multiple="true" 7 :close-on-select="true" 8 placeholder="choice tags"> 9 </multiselect> 10 <input type="hidden" name="selectItems" :value="selected"> // こちらを追加 11 </div> 12 <button type="submit">登録</button> 13 </form>

ご参考になれば幸いです。

投稿2021/02/08 10:04

Twoshi

総合スコア354

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/02/08 13:15

hiddenのinputにデータを渡して、POSTするのですね。 ありがとうございましたm(__)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問