0

Django 1.4.5 で bootstrap-multiselect プラグインを使用して複数選択ドロップダウン メニューを作成しようとしています。プラグインへのリンク: http://davidstutz.github.io/bootstrap-multiselect/

私の form.py は次のとおりです。

weight_training_days = forms.MultipleChoiceField(
    help_text=u'(Required) Select 3 days',
    widget=forms.SelectMultiple(attrs={
        'inline': True,
        'class': 'multiselect',
    }),
    choices=(
        (0, "Mon"),
        (1, "Tue"),
        (2, "Wed"),
        (3, "Thu"),
        (4, "Fri"),
        (5, "Sat"),
        (6, "Sun"),
    ),
)

テンプレートの私のフォームは次のとおりです。

<form class="form-{{ layout }}" action="" method="post">
    {% csrf_token %}

    {{ form|as_bootstrap:layout }}

    <p class="form-actions">
        <input type="submit" value="Submit Changes" class="btn btn-primary">
    </p>
</form>

そして、bootstrap-multiselect.js ファイル (静的フォルダーにリンクされている) の js コード:

 $(document).ready(function() {
   $('.multiselect').multiselect({
     buttonClass: 'btn',
     buttonWidth: 'auto',
     buttonContainer: '<div class="btn-group" />',
     maxHeight: false,
     buttonText: function(options) {
       if (options.length == 0) {
         return 'None selected <b class="caret"></b>';
       }
       else if (options.length > 3) {
         return options.length + ' selected  <b class="caret"></b>';
       }
       else {
         var selected = '';
         options.each(function() {
           selected += $(this).text() + ', ';
         });
         return selected.substr(0, selected.length -2) + ' <b class="caret"></b>';
       }
     }
   });
 });

何らかの理由でプラグインが機能していません。標準の SelectMultiple フィールドのみが表示されます。

JavaScript の経験が非常に限られているため、このプラグインが機能しない理由がわかりません。フィードバック/支援は大歓迎です。ありがとう

4

1 に答える 1

0

この問題は、JavaScript に関する私の経験不足/知識が原因でした。このプラグインのライブラリをダウンロードする必要があり、それが bootstrap-multiselect.js ファイルに含まれています。今はうまくいきます。

于 2013-04-20T23:13:09.763 に答える