ボタンのクリックで選択リストを動的に作成し、それをdivに追加するだけです。問題なく動作していますが、この選択リストをselect2で期待どおりに検索可能に動作させたい場合、動作しません。
以下では、選択リストを GGroupDropDownListForJavascript という名前の html ヘルパーを使用してメソッドに渡しています。html の結果は次のようになります。
<select class="form-control input-xxlarge select2me" id="TagCategoryId" name="TagCategoryId">
<option value="cf1d7da6-f49f-47aa-ba6d-a58f017c59ec">Element1</option>
<option value="cf1d7da6-f49f-47aa-ba6d-a58f017c59ec">Element2</option>
</select>
ここに私のJSコードがあります。
$('#post').click(function (e) {
var arrowBox = $( "<div>"+'@Ajax.JavaScriptStringEncode(Html.GGroupDropDownListForJavascript(p => p.TagCategoryId, Model.GroupedTagCategories, "").ToHtmlString())' + "</div>");
arrowBox.appendTo($("#imageContainer"));
$('#TagCategoryId').select2();
})
このメソッドのエラーを下回っています。
キャッチされていない TypeError: $(...).select2 は関数ではありません
ところで、動的に作成されていない要素に対してテストしましたが、問題なく動作しています。しかし、動的に作成されたものになると、機能しなくなります。何か不足していますか?ありがとうございました。