通过Html.BeginForm提交激活加载动画(Activating loading animat

2019-08-02 09:37发布

我想显示加载动画,当用户点击提交按钮。 简单的GIF将做的工作。 这是我的代码:

@using (Html.BeginForm("SData","Crawl"))
{
    <p>
        Enter Starting URL:<input class="txt" type="text" id="sUrl" name="sUrl" title="Enter Starting URL"/>
    </p>

    <p>
        Enter Number of Threads:<input class="txt" type="text" id="Nbt" name="Nbt" title="Enter number of threads"/>
    </p>

    <p>
        <input class="button" id="submit" type="submit" value="Submit" />
   </p>   
}

Answer 1:

编辑

我误以为有关AJAX助手的问题。 这里是你如何能使用的HtmlHelper做到这一点。

首先,添加一个ID的形式,这样你就可以使用JQuery抓住它:

@using (Html.BeginForm("SData", "Crawl", FormMethod.Post, new { id = "myform" }))
{
    // the form
}

接下来,添加JavaScript事件处理程序来截取表单提交,并显示加载GIF。

$("#myform").submit(function(e) {
    $("#myLoadingElement").show();
});

(原来的答复如下...)

使用AjaxOptions类设置LoadingElementId ,并在等待服务器的响应Ajax的助手将显示元素:

@using (Html.BeginForm("SData","Crawl", new AjaxOptions() {
    LoadingElementId="myLoadingElement"
}))
{
    // form
}

然后,只需将您的GIF无论你希望它显示(最初隐藏):

<div id="myLoadingElement" style="display: none;">
    <img src="loading.gif" alt="Loading..." />
</div>


Answer 2:

你好,我刚刚看了你的帖子在这里,它使用Microsoft.AspNetCore.Mvc工作得很好,我在.NET 2.1的核心:

@using (Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new {id="UpdateForm"})) {@Html.AntiForgeryToken() <div>your inputs here...</div> }

那么HTML脚本:

$("#UpdateForm").submit(function(e){$("#your loader gif here..")}

如果你有问题,你可能要调试你的操作方法,并看看它打破了语句中.... @Dr弗里曼:你可以重定向到任何观点如下:

return RedirectToAction("ActionName", new {@id=id});

希望这有助于



文章来源: Activating loading animation by Html.BeginForm submission