【问题标题】:Open uikit modal on page load在页面加载时打开 uikit modal
【发布时间】:2020-02-18 18:16:24
【问题描述】:

我目前正在 Flask 中开展一个项目,我希望(在特定情况下)在页面加载时打开一个模式。目前我所拥有的如下:

我的视图函数将变量“open_modal”传递到模板中

    return render_template('index.html', open_modal = "window.onload() = function(){UIkit.modal(#modal1).show();};")

在模板本身内部,模板中有一部分看起来像:

<script type="text/javascript">
    {{ open_modal }}
</script>

模态本身看起来像:

    <div id="modal1" uk-modal>
        <div class="uk-modal-dialog uk-modal-body">
            Test test!
        </div>
    </div>

所以我希望每当我使用带有 kwarg 'open_modal' 作为上述值的 render_template 时,它​​会将 javascript 片段插入到模板中,然后 ta-dah!模式将在页面加载时打开。但是,这似乎不起作用,我不知道为什么。 诚然,我没有使用 javascript 的经验,所以我不知道“open_modal”插入的脚本片段是否有效,但我宁愿坚持使用香草 javascript,因为这是我程序中唯一的 javascript,并且我宁愿不要使用 jquery 等不必要地添加更多的体积。

如果您能提供帮助,非常感谢!

【问题讨论】:

    标签: javascript flask modal-dialog uikit jinja2


    【解决方案1】:

    onload 不是函数,它是windowproperty。您必须为其分配一个功能:

    return render_template('index.html', open_modal = "window.onload = function(){UIkit.modal('#modal1').show();};")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多