\r\n```\r\n\r\nどのように記載すべきか、ご教示頂けましたらありがたいです。\r\nよろしくお願いします。","answerCount":1,"upvoteCount":0,"datePublished":"2021-02-06T22:53:37.449Z","dateModified":"2021-02-06T22:53:37.449Z","acceptedAnswer":{"@type":"Answer","text":"以下のように記述すれば、selectImtes: A,Bというように送信することができます。\r\ninputタグhiddenで画面上は表示しないようにしvalueで選択中(selected)のアイテムを持ちます。\r\n※ nameで送信したい任意の項目名を指定できます。例ではselectItemsとしました。\r\n\r\n```html\r\n
\r\n
\r\n \r\n \r\n // こちらを追加\r\n
\r\n \r\n
\r\n```\r\n\r\nご参考になれば幸いです。","dateModified":"2021-02-08T10:04:54.039Z","datePublished":"2021-02-08T10:04:54.039Z","upvoteCount":1,"url":"https://teratail.com/questions/320948#reply-446227"},"suggestedAnswer":[],"breadcrumb":{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https://teratail.com","name":"トップ"}},{"@type":"ListItem","position":2,"item":{"@id":"https://teratail.com/tags/Vue.js","name":"Vue.jsに関する質問"}},{"@type":"ListItem","position":3,"item":{"@id":"https://teratail.com/questions/320948","name":"vue-multiselectを利用し、submitでPOST送信したい"}}]}}}
質問するログイン新規登録

Q&A

解決済

1回答

2078閲覧

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

退会済みユーザー

退会済みユーザー

総合スコア0

Vue.js

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

0グッド

2クリップ

投稿2021/02/06 22:53

0

2

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.29%

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

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

質問する

関連した質問