触发“开关”,控制要显示的部件

时间:2011-03-25 03:14:11

标签: html django

<span id='question'>{{QuestionText}}</span>
<br>
<form action={{address}}>
{% for each in AnswerQuery %}
<span>{{each.answer}}</span><input type='radio' name="answer">
<span>Votes:{{each.answercount}}</span>
<br>
{% endfor %}

嘿,我正在使用django模板进行谷歌应用引擎项目。上面的内容是我的代码片段。但我想知道是否有一种方法可以选择部分显示html。就像在某些情况下,我不希望用户看到QuestionText,所以我只是以某种方式关闭它,同时仍然显示其余部分。我知道我可以渲染相应修改的不同模板,但这样做太微不足道了,我必须渲染一堆不同的模板。如果我可以更改模板的一部分并重用它,那就太好了。我想魔法来自django部分,客户端,但我不知道如何。有帮助吗?谢谢

1 个答案:

答案 0 :(得分:0)

如果您想要隐藏内容并根据某些用户操作使用JavaScript(客户端)显示内容,则可以使用:

<span id="question" style="display: none;">{{QuestionText}}</span>

<script type="text/javascript">
    // This requires jQuery
    $('document').ready(function(){
        if(some_foo_bar == true){
            $('#question').show();
        }
    });
</script>

如果您想完全不显示内容的一部分(即,甚至不将其输出到浏览器),这将有效:

{% if some_variable_set_in_django_view_context %}
<span id='question'>{{QuestionText}}</span>
{% endif %}
<br>
<form action={{address}}>
{% for each in AnswerQuery %}
<span>{{each.answer}}</span><input type='radio' name="answer">
<span>Votes:{{each.answercount}}</span>
<br>
{% endfor %}