如何在页面加载中弹出对话框

Posted

技术标签:

【中文标题】如何在页面加载中弹出对话框【英文标题】:How to popup a dialog box in Page Load 【发布时间】:2020-06-26 05:01:27 【问题描述】:

我在aspx中做了一个如下图所示的对话框:

<div id="IsAccountingOk" class="modalDialog">
    <div>
        <a href="#close" title="Close" class="close">X</a><br />
        <asp:Label ID="lblIsAccountingOkHeader" runat="server" Text="Kassekladde:" Font-Size="Large"></asp:Label><br /><br />
        <asp:Label ID="lblMessage" runat="server" Text="Der skal først vælges regnskabsår!"></asp:Label><br />
        <br />
        <asp:Button ID="btnIsAccountingOK" runat="server" Text="Ok" OnClick="btnIsAccountingOK_Click"/>
    </div>
</div>

样式如下图:

.modalDialog 
    position: fixed;
    font-family: Arial, Helvetica, sans-serif;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,0.8);
    z-index: 99999;
    opacity: 0;
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    pointer-events: none;

.modalDialog:target 
    opacity: 1;
    pointer-events: auto;

.modalDialog > div 
    width: 400px;
    position: relative;
    margin: 10% auto;
    padding: 5px 20px 13px 20px;
    border-radius: 10px;
    background: #fff;
    background: -moz-linear-gradient(#fff, #999);
    background: -webkit-linear-gradient(#fff, #999);
    background: -o-linear-gradient(#fff, #999);

.close 
    background: #606061;
    color: #FFFFFF;
    line-height: 25px;
    position: absolute;
    right: -12px;
    text-align: center;
    top: -10px;
    width: 24px;
    text-decoration: none;
    font-weight: bold;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 1px 1px 3px #000;
    -webkit-box-shadow: 1px 1px 3px #000;
    box-shadow: 1px 1px 3px #000;

.close:hover 
    background: #00d9ff;

我的问题是:如何通过 Page_Load 中的代码弹出此对话框 - 无需用户点击按钮?

也许可以通过 javascript 完成。

我也在 javascript 中尝试过以下操作:

$(document).ready(function () 
    $('#IsAccountingOk').show();
);

但是当我使用上述方法时 - DIV 上的所有内容都被阻止 - 这不是本意:-(

有关更多信息,我可以通过如下所示的按钮告诉我它已经工作:

<asp:Button ID="btnIsAccountingOk" Text="Der skal først vælges et regnskabsår" runat="server" PostBackUrl="#IsAccountingOk"/><br />

更多信息:我在 sitepage.master 中添加了以下行:

<script type="text/javascript" src="scripts/jquery-3.3.1.js"></script>

而且帮助很大。

但是

提前致谢。 问候迈克尔

【问题讨论】:

页面加载后可以调用弹窗功能 @vadivela 感谢您的写作 - 但我如何在窗口函数中调用它?你有例子吗? 它不是你的弹出模型函数或脚本的窗口函数 你能分享你的代码演示吗? @vadivela 感谢您再次写信-但我可以通过单击按钮来调用对话框-但我不知道如何通过代码调用它-所以我不知道如何制作此演示:-( 【参考方案1】:

页面加载时没有要处理的事件处理程序..

$(document).ready(function() 
   //code here
);

您可以使用 $(document).ready() 它会在 DOM 准备就绪时运行代码,并且不会等待加载窗口(图像、iframe...)

【讨论】:

以上是关于如何在页面加载中弹出对话框的主要内容,如果未能解决你的问题,请参考以下文章

在asp.net中如何在js中弹出对话框

js中弹出对话框并下载文件

C#(Winform) 如何在弹出的对话框中显示选择的信息

MFC中弹出对话框的属性怎么设置?

完美解决vue项目中弹出框滑动时,内部页面也跟着滑动问题

如何禁止 alert在浏览器中弹出信息。