1

選択した jquery を使用して、ManyToManyField を選択したウィジェットに直接取得できます。

<script type="text/javascript" src="{{ STATIC_URL }}projectx/projectx_chosen.js"></script>

projectx_chosen.js:

$(document).ready(function () {
    $('#id_sales_item').chosen();
});

これは、私の static_url が正しく設定されていることを明確に示しています。

しかし、django-chosen で同じことを達成しようとしても、何の効果もありません。

class DealType(models.Model):   
    sales_item          = models.ManyToManyField(SalesItem)


class DealTypeForm(ModelForm):   

    class Meta:
        model = DealType

        widgets = {
                    'sales_item': ChosenSelectMultiple(),
                   }

私は下{{STATIC_URL}}js/chosen.jquery.min.js でchoose.jquery.min.jsとchoose.cssを選択しました{{STATIC_URL}}css/chosen.css

なぜこれが機能しないのか考えてみてください。

アップデート

[21/Aug/2012 11:16:13] "GET /static/css/chosen.css HTTP/1.1" 304 0
[21/Aug/2012 11:16:16] "GET /static/js/chosen.jquery.min.js HTTP/1.1" 304 0

したがって、ソースコードの調査によると、両方が拡張機能が期待するパスにあります。そして、それらはロードされます。

しかし、それは単に機能しません。

selected.js を直接使用するのは魅力的なので、通常の使用方法は知っていますが、django-chosen はまだ成熟していないようです。

4

1 に答える 1

0

私は同じ問題を抱えていて、choose.jquery.ready.js ファイルにリンクすることで解決しました。ので、私は持っています:

<link href="{% static 'css/chosen.css' %}" rel="stylesheet">
<script type="text/javascript" src="{% static 'js/chosen.jquery.js' %}"></script>
<script type="text/javascript" src="{% static 'js/chosen.jquery_ready.js' %}"></script>
于 2012-10-09T01:38:35.003 に答える