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

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

新規登録して質問してみよう
ただいま回答率
85.48%
jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

3回答

5618閲覧

jQueryのselect2を使用したマルチプルに一括で入力できるようにしたい

退会済みユーザー

退会済みユーザー

総合スコア0

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2017/03/01 05:22

編集2017/03/01 05:52

やりたい内容としまして、
現在、検索結果の一覧として表示されるもののカラムの中に
jqueryのプラグインのselect2のマルチプルを使用した欄があり

select2の配布サイト
上記のサイトのExamplesにある、Multiple select boxesというのを
そのまま使っているようです。

それらを別で用意したマルチプルの同じ内容の選択肢で
チェックボックスでチェックを入れたレコードにだけ反映させる事をしたいです。

(1)ここのマルチプル選択肢で内容を選択、
ボタンなどを押した際に(2)の一覧に反映

multiple
『選択1』『選択2』

(2)☑を入れた内容だけに反映

チェックnamemultiple
あああ『選択1』『選択2』
いいい
ううう『選択1』『選択2』
えええ

html

1<table id="table"> 2 <tbody> 3 <tr><td class="checkbox">ちぇっくぼっくす</td><td>なまえ</td><td>せんたくし</td> </tr> 4 <tbody> 5</table>

javascript

1$(#table tbody .checkbox:checked).each(function(){ 2// ここのmultiは(1)のvalueが取れてることを確認してます。 3for(var i=0;i<multi.length;i++){ 4 // この部分で同じvalueになっているものをクリック 5 $(this).parents("tr").find(".multiple option:[value="+multi[i]+"]").trigger("click"); 6} 7}

正直select2に関してどうなってるのかわからず、
検討が付きません。
どうか詳しい方いたらお願いいたします。
ちょっと突貫で書いてしまった部分が多いので分かり辛いかもしれませんが、
ご教授お願いいたします。

『追記』
業務で使ってるものなので名前は変えましたが
だいたいこのような形です。

html

1<td nowrap="nowrap"> 2 <div class="select2-container select2-container-multi .multiple" id="s2id_autogen103" style="width: 100%;"> 3 <ul class="select2-choices"> 4 <li class="select2-search-field"> 5 <label for="s2id_autogen104" class="select2-offscreen"></label> 6 <input type="text" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" class="select2-input" id="s2id_autogen104" tabindex="0" placeholder="" style="width: 10px;"> 7 </li> 8 </ul> 9 <div class="select2-drop select2-drop-multi select2-display-none"> 10 <ul class="select2-results"> 11 <li class="select2-no-results">No matches found</li> 12 </ul> 13 </div> 14 </div> 15 <select class="multiple select2-offscreen" multiple="multiple" tabindex="-1"> 16 <option value="1">選択肢1</option> 17 <option value="2">選択肢2</option> 18 </select> 19</td>

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

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

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

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

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

kei344

2017/03/01 05:27

「select2」はライブラリの名前でしょうか。ライブラリは公式配布サイトのURLを質問文に追記ください。(URLにはリンクを張ることができます) また、それのコード記載が提示されているHTMLにもJavaScriptにもありませんので、追記されたほうが良いと思います。
退会済みユーザー

退会済みユーザー

2017/03/01 05:35

select2() メソッドを呼び出している部分のコードを追記してください。
退会済みユーザー

退会済みユーザー

2017/03/01 05:42

少々お待ちください。
退会済みユーザー

退会済みユーザー

2017/03/01 06:00

select2()を記述しているJavaScriptのコードも書いてくれなきゃ、回答できないでしょうに…
退会済みユーザー

退会済みユーザー

2017/03/01 06:09

すみません、ライブラリファイルのselect2のjsファイルをそのまま呼び出してるのとは違うのでしょうか?自分がふれる前からあったソースなので、申し訳ないのですがちょっとわかりません・・・
退会済みユーザー

退会済みユーザー

2017/03/01 06:10

申し訳ないのですが、自分の知識不足でどこの部分を書けばいいのかわからないのでこの質問は閉めたいと思います。
guest

回答3

0

ベストアンサー

下記のようにして実装出来ます。なので、$().select2(); の書かれてある場所を確認してみてください。

【Examples - Select2】
https://select2.github.io/examples.html#programmatic

JavaScript

1var $exampleMulti = $(".js-example-programmatic-multi").select2(); 2$(".js-programmatic-multi-set-val").on("click", function () { $exampleMulti.val(["CA", "AL"]).trigger("change"); });

投稿2017/03/01 06:15

kei344

総合スコア69407

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

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

退会済みユーザー

退会済みユーザー

2017/03/01 06:35

ご回答ありがとうございます! 同じように実装させていただいた所 完璧に動作しました! ありがとうございます。
guest

0

select2にchangeイベントが拾えるようですので、changeイベントで選択した値をチェックボックスに反映させればいいと思いますが。

javascript

1$('#select').select2({オプション}); 2$('#select').change(function() { 3 $('.chk').prop('checked', false); // いったんすべてチェッククリア 4 $('#select').val().forEach(function(val) { 5 // 該当するチェックボックスにチェック 6 $('.chk.' + val).prop('checked',true); 7 }); 8});

投稿2017/03/01 06:14

turbgraphics200

総合スコア4267

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

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

退会済みユーザー

退会済みユーザー

2017/03/01 06:34

ご回答ありがとうございます! clickじゃなくてchangeだったのですね・・・ もう少しjQueryに関して勉強します。。。
guest

0

もうすこし自分で考えてみます。

投稿2017/03/01 06:12

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問