我们在做MVC 进行某一块的局部刷新,有的使用AJAX 请求,有的使用局部页;

下面我给大家推荐一种使用局部页面实现的这种方式:

第一步:

嵌套视图页

 <div id="showAudit">
@*操作信息*@
@{Html.RenderPartial("ShowAudit", Model);}
</div>

第二步:

编写后台代码

[HttpGet]
public ActionResult ShowAudit(int id)
{
using (var _ctx = new BtDbContext())
{
var memberSupply = _ctx.MemberSupplys.FirstOrDefault(c => c.MemberId == id); MemberSupplyModel model = new MemberSupplyModel(); if (memberSupply != null)
{ model.MemberId = memberSupply.MemberId;
model.OrderNumber = memberSupply.OrderNumber;
model.CardId = memberSupply.CardId;
model.Name = memberSupply.Name;
model.MemberMobile = memberSupply.MemberMobile; model.State = memberSupply.State;
model.CreateTime = memberSupply.CreateTime;
model.UpdateTime = memberSupply.UpdateTime;
model.CompanyName = memberSupply.CompanyName;
model.CompanyAddress = memberSupply.CompanyAddress; model.CompanyPhone = memberSupply.CompanyPhone;
model.CompanyUrl = memberSupply.CompanyUrl;
model.ManagementProduct = memberSupply.ManagementProduct;
model.ContactJob = memberSupply.ContactJob;
model.ContactPeople = memberSupply.ContactPeople; model.ContactMobile = memberSupply.ContactMobile;
model.Memo = memberSupply.Memo;
model.OpEmployeeName = memberSupply.OpEmployeeName;
} return PartialView(model);
}
}

第三步:

编写视图页面:

@using WechatMall.Common.Extensions;

@model WechatMall.Model.ViewModel.MemberSupplyModel

@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
@if (Model.State != WechatMall.Common.EnumHelper.MemberApplyForStatus.AuditNot)
{ <table class="ltable" style="margin-top:30px;">
<thead>
<tr>
<th colspan="" style=" text-align:left;padding-left:20px; font-weight:bold; background-color:#ffffff; ">操作信息</th>
</tr>
</thead>
<tbody class="ltbody">
<tr>
<td style="width:18%">@Html.DisplayNameFor(model => model.OpEmployeeName)</td>
<td style="width:18%">
@Html.DisplayFor(modelItem => Model.OpEmployeeName)
</td> <td>@Html.DisplayNameFor(model => model.State)</td>
<td style="width:15%">
@Model.State.ToDescriptionString()
</td> <td>@Html.DisplayNameFor(model => model.UpdateTime)</td>
<td>
@Html.DisplayFor(modelItem => Model.UpdateTime)
</td>
</tr>
<tr>
<td>@Html.DisplayNameFor(model => model.Memo)</td>
<td colspan="">
@Html.DisplayFor(modelItem => Model.Memo)
</td>
</tr>
</tbody>
</table>
}

第四步:

编写JS 代码

    $("#sbmbtn").click(function () {

            $.post('@Url.Action("AuditDispose", "Members")', $("#form1").serialize(), function (json) {

                if (json.f) {
$("#showAudit").load('@Url.Action("ShowAudit", "Members", new { id = Model.MemberId }, Request.Url.Scheme)')
}
else {
alert(json.ext);
}
}); });

这样就可以轻松搞定了;推荐一下参考网址:https://cmatskas.com/update-an-mvc-partial-view-with-ajax/

那有里有不对的地方希望大家指出来,或者有更好的方法提出来,大家相互学习,进步..

MVC 局部加载页面的实例的更多相关文章

  1. 在.NET MVC下不用iframe实现局部加载html

    最近在做个后台系统,之前都是用iframe来实现加载内容,左侧菜单不刷新.但一直不喜欢这种方法,有许多弊端.今天自己在网上查找了一番后找到了比较好的替代方案: 一.利用html的锚点标记来实现无刷新页 ...

  2. jquery ajax局部加载方法介绍

    [导读] 在jquery中实现ajax加载的方法有很多种,不像以前的js的ajax只有那一种,下面我们介绍jquery ajax实现局部加载方法总结,有需要了解的朋友可参考.例 代码如下复制代码 $ ...

  3. 模拟jQuery中的ready方法及实现按需加载css,js实例代码

    这篇文章介绍了模拟jQuery中的ready方法及实现按需加载css,js实例代码,有需要的朋友可以参考一下     一.ready函数的实现经常用jQuery类库或其他类库中的ready方法,有时候 ...

  4. unobtrusive验证,ajax局部加载后验证失效解决方法

    页面加载后运行此代码 $(function() {$.validator.unobtrusive.parse($("form")); }); 原因: 页面加载后unobtrusiv ...

  5. Ajax--PHP+JQuery+Ajax解析json、XML数据、加载页面

    一.JQuery+Ajax用get.post方式提交和请求数据 知识要点: $('#userName').blur(function () { var txt = $(this).val(); $.a ...

  6. HBuilder mui 手机app开发 Android手机app开发 ios手机app开发 打开新页面 预加载页面 关闭页面

    创建子页面 在mobile app开发过程中,经常遇到卡头卡尾的页面,此时若使用局部滚动,在android手机上会出现滚动不流畅的问题: mui的解决思路是:将需要滚动的区域通过单独的webview实 ...

  7. webclient 比浏览器加载页面慢的一个问题

    测试中发现webclient 比浏览器加载页面慢的一个问题:原因WebClient 支持 gzip, deflate,但是未设置 解决方案: class WebClientEx : WebClient ...

  8. RadioGroup+Fragment 使用Fragment的add()方法,防止使用replace每次都重新加载页面,造成资源浪费

    radiogroup+fragment是很常用的主页导航控件,之前为了代码简便一直使用的replace()替换fragment,代码如下: getSupportFragmentManager().be ...

  9. jquery加载页面的方法

    jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别.   1.$(function(){ $("#a&q ...

随机推荐

  1. UIBezierPath IOS贝塞尔曲线

    //记录  贝塞尔曲线使用 //根据一个矩形画曲线 + (UIBezierPath *)bezierPathWithRect:(CGRect)rect //根据矩形框的内切圆画曲线 + (UIBezi ...

  2. [前端 1] 使用frameset框架构建网页基本布局

    导读:在做项目的过程中,发现网页的一些地方是不变的,比如说顶部.底部.而变幻的内容就只是一部分.这个时候在想,这是每次都刷新一个界面呢,还是有别的快捷方法呢.然后就找到了frameset 这个东西.本 ...

  3. Windbg + .Net .NET Memory Profiler 排查内存泄露

    这是一个Winform程序,用于项目中的定时运算.症状是,运行一段时间后,内存持续上升.如一天内就能够达到300M. 打开.Net Memory Profiler,监控该程序,一段时间后,看到该程序产 ...

  4. 【缓存】EF4ProviderWrappers

    在Kooboo中使用了Entity Framework作为持久化框架,但由于EF1.0并没有提供完整缓存解决方案,一直以来都在为数据缓存而烦脑,在没有找到合适解决方案的情况下,采取了临时的解决办法:直 ...

  5. 百度地图API示例之文本标注

    代码 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" cont ...

  6. JS常用的设计模式(15)—— 职责链模式

    职责链模式是一个对象A向另一个对象B发起请求,如果B不处理,可以把请求转给C,如果C不处理,又可以把请求转给D.一直到有一个对象愿意处理这个请求为止. 打个比方,客户让老板写个php程序.老板肯定不写 ...

  7. Magento修改css样式

    Magento研究了第四天才开始搞明白怎么运行. 首先对于前端开发来说要修改样式的话需要运行: grunt less:luma 如果提示: 那就说明grunt配置的路径不对,默认是英文的,如果我们用中 ...

  8. hbase基本结构

    HBASE  基本结构一.overview1. hbase <=> NOSQL     不错,hbase 就是某种类型的nosql 数据库,唯一的区别就是他支持海量的数据.    hbas ...

  9. jQuery身份证验证插件

    jQuery身份证验证插件 /*! * jQuery isIDCard Plugin v1.0.0 * http://www.cnblogs.com/cssfirefly/p/5629561.html ...

  10. asp.net导出excel示例代码

    asp.net导出excel的简单方法. excel的操作,最常用的就是导出和导入. 本例使用NPOI实现. 代码:/// <summary> );             ;       ...