C# 登录时的Ajax加载程序(ASP.NET MVC)
我曾经成功地使用过ajax-loader.gif,但它是针对用户的过滤 我现在尝试在登录表单上使用它,但它不起作用(loader未显示) 这是我的密码:C# 登录时的Ajax加载程序(ASP.NET MVC),c#,asp.net,asp.net-mvc,loader,C#,Asp.net,Asp.net Mvc,Loader,我曾经成功地使用过ajax-loader.gif,但它是针对用户的过滤 我现在尝试在登录表单上使用它,但它不起作用(loader未显示) 这是我的密码: @model Models.Login @using (Ajax.BeginForm("Index", "Login", new AjaxOptions { UpdateTargetId = "ajaxUpdatedPanel", LoadingElementId = "loader" })) { <div id="box_login
@model Models.Login
@using (Ajax.BeginForm("Index", "Login", new AjaxOptions { UpdateTargetId = "ajaxUpdatedPanel", LoadingElementId = "loader" }))
{
<div id="box_login">
<div class="editor-label">
@Html.LabelFor(m => m.Username)
</div>
<div class="editor-field">
@Html.TextBoxFor(m => m.Username)
@Html.ValidationMessageFor(m => m.Username)
</div>
<div class="editor-label">
@Html.LabelFor(m => m.Password)
</div>
<div class="editor-field">
@Html.PasswordFor(m => m.Password)
@Html.ValidationMessageFor(m => m.Password)
</div>
<br />
<div class="mask roundedCorners" style="float:left;">
<input type="submit" class="btn" value="Logg inn" />
</div>
<div id="loader" style="display:none;float:left;width:100px;margin: 8px 0 0 10px;">
<img src="~/Content/images/loader16.gif" />
</div>
</div>
@Html.ValidationSummary(true)
}
@model Models.Login
@使用(Ajax.beginnform(“Index”、“Login”、新的AjaxOptions{UpdateTargetId=“ajaxUpdatedPanel”、LoadingElementId=“loader”}))
{
@LabelFor(m=>m.Username)
@Html.TextBoxFor(m=>m.Username)
@Html.ValidationMessageFor(m=>m.Username)
@LabelFor(m=>m.Password)
@Html.PasswordFor(m=>m.Password)
@Html.ValidationMessageFor(m=>m.Password)
@Html.ValidationSummary(true)
}
这应该可以
$(document).ready(function() {
$('form').submit(function() {
if (!someValidations()) {
return false;
} else {
$('form #loader').show();
}
return true;
});
function someValidations() {
return true;
}
});
现在图像显示,它起作用了。唯一的问题是图像没有设置动画。它显示为静态(就像它是jpg而不是gif)-只显示一帧gif。这可能是因为您的图像可能并没有设置动画。尝试使用此图像查看它是否有效-哦,这只发生在IE中:(是的,但有一些小的更改。不要使用id“loader”,而是使用class“loader”并使用
$('form.loader')。show();
这将为所有包含loader类的表单显示loader。