提交表单后如何使用模态重新加载页面

Posted

技术标签:

【中文标题】提交表单后如何使用模态重新加载页面【英文标题】:How to reload page with modal after form submission 【发布时间】:2019-11-02 08:14:39 【问题描述】:

我试图在提交表单并从数据库中获取结果后显示引导模式。该页面必须重新加载并显示额外的模式,以便用户可以尝试再次登录。

我尝试重新加载页面,然后回显脚本

这是我现在所拥有的

<? php
if(condition)
  echo "<script>$('#modal').modal('show')</script>";
?>

...

<div class="modal fade" id="modal" tabindex="-1" role="dialog"</div>

页面要么在没有模式的情况下重新加载,要么是空白页面。我希望它能够加载添加的模式。

【问题讨论】:

尝试在页面底部添加脚本部分或包装在 $( document ).ready - 函数中。当您尝试打开它时,您的模态可能未加载 感谢您的帮助! 【参考方案1】:

您是否尝试过将 modal 绑定到 JS 方法,然后从 PHP 调用该方法?

    <?php
        if($condition)
            echo "<script>showModal()</script>";
    ?>
    function showModal() 
        $('#modal').modal('show');
    

编辑:

你可以试试这样的:

<script>
    $(function()
        if (<?php echo $condition ?> === true) 
            $('#modal').modal('show');
        
    );
</script>

【讨论】:

是的,我把showModal函数放在了html的头部,提交表单后它显示的只是一个空白页面。 啊,我想到了一个更好的方法来做到这一点。我将编辑我的原始答案。我的想法是您的代码的 javascript 端正在 pageLoad 上执行,而不是页面准备就绪。将其移至上述$(function() 调用将改为在文档就绪时执行 JS。 (我只是把 PHP 条件移到脚本里了,你不用这样把 PHP 混进 JS 里)。

以上是关于提交表单后如何使用模态重新加载页面的主要内容,如果未能解决你的问题,请参考以下文章

如何在提交时重新加载页面

提交后保持物化 CSS 模态表单打开

表单提交后如何防止页面重新加载 - JQuery

如何避免在php表单提交中重新加载页面

在rails 5中没有页面刷新和重定向的模态表单提交

html 如何在表单提交后阻止页面重新加载--JQuery