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

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

新規登録して質問してみよう
ただいま回答率
85.48%
プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

5358閲覧

Selectize.jsでセレクトボックスを実装したが機能しない

Uichi

総合スコア11

プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2019/03/27 07:21

Selectize.jsを使って、セレクトボックスを実装しているのですが、うまく機能しません。
プラグインはCDNから読み込み、Selectize.jsの公式ページにあるDEMOやhttp://4webtbt.com/001490を参考に実装したのですが、正しく機能させることができず、原因も特定できませんでした。開発者ツールのコンソールを見ても、とくにエラーは出ていませんでした。

セレクトボックス自体は表示されるのですが、入力ができず、初期に入れている文字が削除できない状態です。
手探りで原因をつかもうとしたものの、全く見当つかずなため、ご教授いただければと思います。

Selectize.js公式ページ

https://selectize.github.io/selectize.js/

実装したコード

<!DOCTYPE html> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Test Title</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/css/selectize.min.css" /> <script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/microplugin/0.0.3/microplugin.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/js/selectize.min.js"></script> <script type="text/javascript"> $('#selectizeDemo01').selectize({ persist: false, createOnBlur: true, create: true }); </script> </head> <body> <div class="selectize-box"> <p class="title">タグ</p> <div class="control-group"> <input type="text" id="selectizeDemo01" class="demo-default selectized" value="awesome,neat" tabindex="-1" style="display: none;"> <div class="selectize-control demo-default multi"> <div class="selectize-input items not-full has-options has-items"> <div data-value="awesome" class="item">awesome</div> <div data-value="neat" class="item">neat</div> <input type="text" autocomplete="off" tabindex="" style="width: 4px; opacity: 1; position: relative; left: 0px;"> </div> <div class="selectize-dropdown demo-default multi" style="display: none;"> <div class="selectize-dropdown-content"></div> </div> </div> </div> </div> </body> </html>

表示されるもの

イメージ説明

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

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

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

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

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

guest

回答2

0

自己解決

無駄そうな部分を削ぎ落としてソースを見直し、sifter.jsを追加することで自己解決しました。

<!DOCTYPE html> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Test Title</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/css/selectize.min.css" /> <script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/microplugin/0.0.3/microplugin.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/sifter/0.5.3/sifter.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/js/selectize.min.js"></script> <script type="text/javascript"> $(function(){ $('#selectizeDemo01').selectize({ persist: false, createOnBlur: true, create: true }); }); </script> </head> <body> <div class="selectize-box"> <p class="title">タグ</p> <div class="control-group"> <input type="text" id="selectizeDemo01" class="demo-default selectized" value="awesome,neat" tabindex="-1" style="display: none;"> </div> </div> </body> </html>

投稿2019/03/27 07:57

Uichi

総合スコア11

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

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

0

現在の呼び出し位置だと、まだ#selectizeDemo01が振られている要素がドキュメント上に現れていないので何も起動しません。

</body>の前に置くかreadyを書いてください。 ```js $(function(){ $('#selectizeDemo01').selectize({ persist: false, createOnBlur: true, create: true }); }); ```

ただし、これだけでもまだのようです。
BootStrap読み込みなどされていますが、一度最低限のミニマムコードで試してはいかがでしょうか。
今回入れようとしているselectizeに直接関係ない情報が多ければ多いほど、原因の特定と調査が難航します。

投稿2019/03/27 07:38

m.ts10806

総合スコア80850

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

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

m.ts10806

2019/03/27 07:49

たぶんjQueryのバージョンも関係ありますね。 公式では1.10.1が読み込まれています。 説明にもbootstrap2 bootstrap3と書いてあるので4前提のjQueryだと動かないようです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問