MVC Ajax Form & Ajax Valida(笔记)
1、引入必要的文件
<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
2、Ajax From & Ajax Valida
<h2>AjaxForm</h2> <!--两种loading 方式,一种是 ajax form 提供的 LoadingElementId(loading 对象起始设置display:none;),另外一种是在 onBegin 开启Loading效果,然后再OnComplete关闭Loading效果--> @using (Ajax.BeginForm("ajax", "home", new AjaxOptions() { LoadingElementId = "loading", UpdateTargetId = "ajaxResult", OnComplete = "return OnComplete()", OnBegin = "return OnBegin();", Confirm = "要提交?", OnFailure = "return OnFailure();", OnSuccess = "OnSuccess" })) { <text>Name:</text><input type="text" id="name" name="name" data-val="true" data-val-required="Name 是必填项." /> @*<span class="field-validation-valid" data-valmsg-for="name" data-valmsg-replace="true" style="font-size:large; color:blue;"></span>*@ @Html.Partial("_ValidationError","name") <br /> <text>Age:</text><input type="text" id="age" name="age" data-val="true" data-val-required="Age 是必填项." data-val-digits="输入合法数字."/> @Html.Partial("_ValidationError","age") <br /> <text>Email:</text><input type="text" id="email" name="email" data-val="true" data-val-email="Email格式不正确."/> @Html.Partial("_ValidationError","email") <br /> <input type="submit" value="Ajax提交" /> <br /> } <div id="ajaxResult"> </div> <div id="loading" style="display:none;"> 正在请求,请稍后.......... </div> <script> function OnComplete() { //alert("OnComplete 事件"); $("h2").html("AjaxForm"); } function OnBegin() { //alert("OnBegin 事件"); $("h2").html("请在请求,请稍后...") } function OnFailure() { alert("OnFailure 事件 - ajax请求失败"); } function OnSuccess(data) { //alert("ajax 请求成功返回的数据:" + data); } </script>
3、Controllers
public ActionResult AjaxForm() { return View(); } [HttpPost] public ActionResult ajax(string name, string age) { //throw new Exception("内部抛出了异常"); return PartialView("AjaxFromControl", new AjaxModel() { Name = name, Age = age}); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库