3

在我的应用程序中,每当删除一个问题时,它都会显示一条 django 消息,表明该问题已被删除。相关代码为:

from django.contrib import messages

msg= _('Question is deleted')
messages.info(request, msg)

该消息会根据需要显示,但是我希望显示消息持续更长的时间至少 10 秒。或者直到用户点击它。

在 django 文档中看到消息过期但仍然无法弄清楚,而且我没有可以设置为 false 的消息存储。

帮助表示赞赏:)

4

1 回答 1

11

你想做的是javascript域。下面的代码将显示您的消息 10 秒,或者您可以手动关闭它。在模板中,您可以这样做:

{% for message in messages %}
    <div class="message">
        {{ message }}
        <a href="#" class="del-msg">&times;</a>
    </div>
{% endfor %}

在javascript中:

<script>
    $(document).ready(function() {
        // messages timeout for 10 sec 
        setTimeout(function() {
            $('.message').fadeOut('slow');
        }, 10000); // <-- time in milliseconds, 1000 =  1 sec

        // delete message
        $('.del-msg').live('click',function(){
            $('.del-msg').parent().attr('style', 'display:none;');
        })
    });
</script>
于 2012-12-18T12:41:46.643 回答