gpt4 book ai didi

javascript - 每次提交页面时显示加载器 MVC Asp.net

转载 作者:行者123 更新时间:2023-11-30 11:02:44 25 4
gpt4 key购买 nike

如何在 MVC Asp.net 中每次提交页面时加载图像或文本?因此,基本上我不想在每个页面中重复代码,我想在提交表单(无论在应用程序的哪个位置)时显示图像或文本,和/或更好的方式让用户页面正在加载。

这是_layout.cshtml中的代码

<div class="spinner" style="display:none">
<div class="center-div">
<div class="inner-div">
<div class="loader"></div>
</div>
</div>
</div>
@RenderBody()

这是我编写的用于捕获所有提交按钮的 JavaScript:

<script>
$(document).ready(function () {
$(document.querySelectorAll("button[type=button]")).click(function () {
$('.spinner').css('display', 'block');
});
});
</script>

最后是一个简单的 CSS:

<style>
.center-div {
width: 300px;
height: 300px;
position: absolute;
left: 50%;
top: 50%;
margin-left: -150px;
margin-top: -150px;
}

.spinner {
position: fixed;
z-index: 999;
height: 100%;
width: 100%;
top: 0;
left: 0;
background-color: Black;
filter: alpha(opacity=60);
opacity: 0.6;
-moz-opacity: 0.8;
}

.loader {
margin: auto;
border: 16px solid #f3f3f3;
border-radius: 50%;
border-top: 16px solid #15a0ec;
border-bottom: 16px solid #15a0ec;
width: 120px;
height: 120px;
-webkit-animation: spin 2s linear infinite;
animation: spin 2s linear infinite;
}

.inner-div {
background-color: white;
border-radius: 15px;
margin: auto;
padding: 2%;
width: 150px;
}

@@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}

100% {
-webkit-transform: rotate(360deg);
}
}

@@keyframes spin {
0% {
transform: rotate(0deg);
}

100% {
transform: rotate(360deg);
}
}
</style>

我试过了,但根本不起作用。

提前致谢。

最佳答案

如果是 Ajax 表单提交:

$(document).ajaxSend(function (event, xhr, options) {

$('.spinner').css('display', 'block');

}).ajaxComplete(function (event, xhr, options) {

$('.spinner').css('display', 'none');

}).ajaxError(function (event, jqxhr, settings, exception) {

$('.spinner').css('display', 'none');

});

这将处理所有 Ajax 调用中的加载程序。

如果您想显示加载程序直到页面完全加载,则:

首先,从 Spinner div 中删除“display:none”

  <div class="spinner">
<div class="center-div">
<div class="inner-div">
<div class="loader"></div>
</div>
</div>
</div>

然后在 JS 中:

<script>
$(window).on('load', function () {
$('.spinner').css('display', 'none');
});
</script>

关于javascript - 每次提交页面时显示加载器 MVC Asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56973776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com