【问题标题】:Bootstrap modal not showning only on my machine引导模式仅在我的机器上不显示
【发布时间】:2020-06-08 15:51:23
【问题描述】:

我的问题很容易理解:引导模式没有在应该显示的时候显示。 正如您在下图中看到的那样,网站全部变灰,但不显示模式。有趣的是,这只发生在我的机器上。我已经尝试过使用 Firefox、Chrome、Edge,也在隐身模式下,但似乎没有任何改变。然而,这适用于其他任何人的机器,包括我自己的另一台机器。 编辑:我尝试清除缓存并使用开发工具中使用“无缓存”的选项。依然没有。 AJAX 请求返回 200,我可以看到代码中注入的模态 HTML,所以我会说它工作正常。

用开发工具仔细观察 CSS,.modal 类似乎还有一个display:none 属性,当我把它去掉时,我可以看到模态。但我不应该手动这样做......

这是当您按下加号按钮时触发的 javascript:

    Start: function (id) {
    $.ajax({
        url: "/Progetti/ElencoProgetti/Create/", //this is the location of the modal
        data: {
            id: (id == null ? 0 : id),
        },
        success: function (data) {
            if (id == 0) {
                $("#nuovoProgettoLabel").html("Aggiungi progetto");
            } else {
                $("#nuovoProgettoLabel").html("Modifica progetto");
            }
            $("#nuovoProgettoBody").html(data);
            //NuovoProgetto.Init();
            $("#nuovoProgetto").modal('show');
        },
        error: function () {
            Swal.fire(
                'Evento',
                'Errore durante il caricamento',
                'error'
            );
        }
    });

这是模态框所在的 HTML:

<div class="modal fade" id="nuovoProgetto" tabindex="-1" role="dialog">
<div class="modal-dialog modal-lg" role="document">
    <div class="modal-content">
        <div class="modal-header">
            <h4 class="title" id="nuovoProgettoLabel">Evento</h4>
        </div>
        <div class="modal-body" id="nuovoProgettoBody"> 
        <!-- the JS injects the modal here-->
        </div>
        @*<div class="modal-footer">
                <button type="button" class="btn btn-primary">SAVE CHANGES</button>
                <button type="button" class="btn btn-danger" data-dismiss="modal">CLOSE</button>
            </div>*@
    </div>
</div>

很确定 JQuery 版本是 331。在引导版本上不太确定(这方面的高级人员说主要版本是 4) 我在 SO 还很新,所以如果您需要其他任何东西,请告诉我。我不知所措......即使我已经为您提供了我认为足以理解这一点的代码,您可能无法重现该问题,因为它只发生在我的笔记本电脑上。 关于什么会导致这种情况的任何线索?

【问题讨论】:

  • 如果它只是在您的机器上发生,则可能是缓存问题。我还可以看到模态出现在 AJAX 请求之后,那么您是否检查过以确保 AJAX 请求正常工作?
  • 感谢您的提问。我已尝试清除缓存并使用开发工具中使用“无缓存”的选项。依然没有。 AJAX请求返回200,我可以看到代码中注入了模态HTML,所以也不是。
  • 您好,您找到解决这个问题的方法了吗?我有同样的问题,不是在我的笔记本电脑上,而是在客户端笔记本电脑上,我似乎找不到解决方案
  • @AndreiDobrin 不幸的是没有。我不得不重新安装机器来解决这个问题,但我认为这不是一个真正的解决方案。
  • @9Snick4,是的,这不是解决方案。我们有一个在 100 多台计算机上使用的应用程序,它只在其中 5 台计算机上使用。我不明白为什么,哪里都没有错误,这真的很令人沮丧。我可以强制它出现,但是在有多个模态的页面上,这个解决方案不起作用,因为即使使用相同的强制,第二个模态仍然不会出现。非常感谢您的回复

标签: jquery twitter-bootstrap asp.net-core-mvc


【解决方案1】:

$('.modal-backdrop.fade.in').remove();

【讨论】:

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