C# 登录时的Ajax加载程序(ASP.NET MVC)

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

我曾经成功地使用过ajax-loader.gif,但它是针对用户的过滤

我现在尝试在登录表单上使用它,但它不起作用(loader未显示)

这是我的密码:

@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。