我在MVC 3中有一个表单.目前我正在执行以下操作来发布表单.
表单已发布,并且正在执行整页刷新以显示结果.
表单已发布,并且正在执行整页刷新以显示结果.
提交后,controll将发送成功或失败状态.而已.
我只需要在div中显示基于返回状态的成功或失败消息.
有谁知道在MVC 3中如何做到这一点的高级步骤?
<div id="ShowResultHere"></div> @using (Html.BeginForm("Update","Test",FormMethod.Post,new { id="frmUpdate"})) { //form fields <button type="submit" class="sprt bg_red bt_red h27">Update</button> } [HttpPost] public ActionResult Update(TestModel model) { return Json(new { s = "Success" }); }
我希望Success在ShowResultHere div onsuccess回调中静默显示.
这可以在MVC 3中完成吗?
解决方法
您可以订阅表单的submit事件并执行AJAX调用,如下所示:
$(function() { $('#frmUpdate').submit(function() { $.ajax({ url: this.action,type: this.method,data: $(this).serialize(),success: function(result) { // The AJAX call succeeded and the server returned a JSON // with a property "s" => we can use this property // and set the html of the target div $('#ShowResultHere').html(result.s); } }); // it is important to return false in order to // cancel the default submission of the form // and perform the AJAX call return false; }); });