MVC 局部加载页面的实例
我们在做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 局部加载页面的实例的更多相关文章
- 在.NET MVC下不用iframe实现局部加载html
最近在做个后台系统,之前都是用iframe来实现加载内容,左侧菜单不刷新.但一直不喜欢这种方法,有许多弊端.今天自己在网上查找了一番后找到了比较好的替代方案: 一.利用html的锚点标记来实现无刷新页 ...
- jquery ajax局部加载方法介绍
[导读] 在jquery中实现ajax加载的方法有很多种,不像以前的js的ajax只有那一种,下面我们介绍jquery ajax实现局部加载方法总结,有需要了解的朋友可参考.例 代码如下复制代码 $ ...
- 模拟jQuery中的ready方法及实现按需加载css,js实例代码
这篇文章介绍了模拟jQuery中的ready方法及实现按需加载css,js实例代码,有需要的朋友可以参考一下 一.ready函数的实现经常用jQuery类库或其他类库中的ready方法,有时候 ...
- unobtrusive验证,ajax局部加载后验证失效解决方法
页面加载后运行此代码 $(function() {$.validator.unobtrusive.parse($("form")); }); 原因: 页面加载后unobtrusiv ...
- Ajax--PHP+JQuery+Ajax解析json、XML数据、加载页面
一.JQuery+Ajax用get.post方式提交和请求数据 知识要点: $('#userName').blur(function () { var txt = $(this).val(); $.a ...
- HBuilder mui 手机app开发 Android手机app开发 ios手机app开发 打开新页面 预加载页面 关闭页面
创建子页面 在mobile app开发过程中,经常遇到卡头卡尾的页面,此时若使用局部滚动,在android手机上会出现滚动不流畅的问题: mui的解决思路是:将需要滚动的区域通过单独的webview实 ...
- webclient 比浏览器加载页面慢的一个问题
测试中发现webclient 比浏览器加载页面慢的一个问题:原因WebClient 支持 gzip, deflate,但是未设置 解决方案: class WebClientEx : WebClient ...
- RadioGroup+Fragment 使用Fragment的add()方法,防止使用replace每次都重新加载页面,造成资源浪费
radiogroup+fragment是很常用的主页导航控件,之前为了代码简便一直使用的replace()替换fragment,代码如下: getSupportFragmentManager().be ...
- jquery加载页面的方法
jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别. 1.$(function(){ $("#a&q ...
随机推荐
- Android ROM 备书
1. Android ROM 目录接口 我们经常说的刷ROM是刷系统的意思,但是ROM的原意并不是这样,ROM的全称是read only memory只读储存器,正因为它是“只读”的,而且系统文件通常 ...
- tomcat 页面管理
<role rolename="admin-gui"/> <role rolename="manager-gui"/> <user ...
- Code Sign error: No unexpired provisioning profiles found that contain any of the keychain's signing certificates
最近离职了,刚好在离职之际有人叫我帮做个项目,简直了,没有mac电脑,没有真ji设备,简直了.接项目那哥们,暂且叫做J,大哥说我给你想办法,then,给借了个mac pro.刚拿到电脑真是喜出望外啊, ...
- SVN 忽略获取和提交obj、bin文件夹
一.全局设置的方式(貌似不行) SVN忽略文件夹刚开始用的是这种方式: Settings => Subversion里的Global ignore pattern增加这两项*/bin */obj ...
- 优化Linux下的内核TCP参数来提高服务器负载能力
http://blog.renhao.org/2010/07/setup-linux-kernel-tcp-settings/ /proc/sys/net目录 所有的TCP/IP参数都位于/proc/ ...
- rpm软件包
安装软件:rpm -i software.rpm卸载软件:rpm -e software升级形式安装:rpm -U software-new.rpmrpm支持通过http.ftp协议安装软件:rpm ...
- 用户 'sa' 登录失败。 (Microsoft SQL Server,错误: 18456)
今天登陆数据库的时候,却忽然登陆了不了,并且提示了这样的错: 解决方法: 1.用Windows身份登录数据库 2.安全性==>登录名==>双击sa 3.重设密码 4.状态==>登录: ...
- 如何在Word表格中的某一栏添加背景颜色
如何在Word表格中的某一栏添加背景颜色 编写人:CC阿爸 2014-3-14 用鼠标选中某一个单元格然后右键单击 下拉菜单选择.<边框和低纹>然后点<低纹>选项卡 选中色卡 ...
- luigi学习3-使用luigid
--local-scheduler的方式只适用于开发调试阶段,当你真正要把程序部署到一个产品时,我们推荐使用luigid服务. 使用luigid服务不但能提供锁服务(防止一个任务被多个进程重复执行), ...
- Linux下的Source命令及脚本的执行方式解析
Linux Source命令及脚本的执行方式解析 http://blog.csdn.net/wangyangkobe/article/details/6595143 当我修改了/etc/profile ...