0

JavaScript 内で Django のテンプレート タグを使用するにはどうすればよいですか? これは私のコードです:

{% block scripts %}
<script>
    $(document).ready(function() {
        var classEditor = {
            dcg: $("div.control-group"),

            set: function(i, errors) {
                $dcg = $(classEditor.dcg[i]);
                $dcg.addClass("error");
                $dcg.children('div').children('div').children('p').text(errors);
            }
        };

        {% if form.email.errors %}
            {% for err in form.email.errors %}
                {{ e|add:err }}
            {% endfor %}
            classEditor.set(1, {{ e }});
        {% endif %}
    })
</script>
{% endblock %}

すべてのエラーを関数に送信して、それを処理したいと考えています。と を使用しようとしましstriptagsstringformatが、常にエラーが発生します。

4

1 に答える 1

1

あなたの問題はJavascriptとは何の関係もないと思います。問題はここにあります:

{{ e|add:err }}

これはまったく意味がありません。e内のすべてのアイテムで構成されるリスト を作成しようとしているようですform.email.errors。しかし、テンプレートではそのようなことはできません。設計上、データ操作は許可されていません。フィルタは、表示のaddために数値計算を実行するだけで、オブジェクトを変更しません。

ビューでエラーを JSON にシリアル化し、その JSON オブジェクトをclassEditor.set.

于 2012-04-18T15:30:14.277 に答える