MVC 视图与控制器传值的几种方法
一、页面取值传给控制器
1、表单传值----利用Action
视图页:
<form action="方法名" method="post">
<label for="content">值内容</label>
<input type="text" name="bdzhi" id="content" /><br />
<input type="submit" value="表单传值">
</form>
控制器:
public ActionResult 方法名(FormCollection fc)
{
ViewBag.message = fc["bdzhi"];
return View();
}
这里是通过ViewBag返回页面 public ActionResult 方法名()
{
ViewBag.message =Request.Form["bdzhi"];
return View();
}
2、AJAX传值
<div>
<h2>AJAX传值</h2>
<span id="sex"></span><br />
<input type="radio" name="sexs" checked="checked" value="男">男 <input type="radio" name="sexs" value="女">女<br />
<input type="button" value="提交" id="bt">
<script>
//提交按钮绑定点击事件
$("#bt").on('click', function () {
//获取选中的radio选项的值
var value = $("input[type=radio]:checked").val()
//后台通过Request.Form["value"]可以取到
params = "value=" + value;
$.ajax({
//post方法传值
type: "POST",
url: "/xuexi/xingbie",
data: params,
success: function (data) {
//清空id=sex的span标签里的内容
$("#sex").empty();
//将后台返回的数据添加到span标签里
$("#sex").append(data);
}
})
})
</script>
</div>
控制器:
public string xingbie(string sex)
{
sex = "您的性别是" + Request.Form["value"];
return sex;
}
二、控制器返回页面
1、使用ViewBag(视图包)传递数据
控制器中:ViewBag.属性="任意";
页面中: @ViewBag.属性
属性可以随便填写!!!
例如:
控制器中方法:
public ActionResult 方法()
{
ViewBag.message ="哈哈哈";
return View();
}
页面中即可直接使用:
<span>@ViewBag.message</span>
2、使用View Data传递数据
控制器中:ViewData["随意起"]="任意";
页面中: @ViewData["随意起"]
使用方法同上
3、使用TempData传递数据
控制器中:TempData["随意起"]="任意";
页面中: @TempData["随意起"]
使用方法同上
注意!TempData的值在取了一次后则会自动删除刷新页面,则TempData[""]为Null
只是据说哈~~我没试验过,你们可以试验下告诉我!!
4、提供视图模型对象
控制器中:
public ViewResult Index()
{
DateTime date = DateTime.Now;
return View(date);
}
视图:
@model DateTime
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
今天是: @Model.DayOfWeek
MVC 视图与控制器传值的几种方法的更多相关文章
- MVC控制器向View视图传值的三种方法
首先创建一个MVC的项目,其中需要一个控制器(TestController),三个视图(index,edit,detail) 1.项目结构如下:
- 【ASP.NET MVC系列】浅谈ASP.NET MVC 视图与控制器传递数据
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- android fragment传递参数_fragment之间传值的两种方法
在Activity中加载Fragment的时候.有时候要使用多个Fragment切换.并传值到另外一个Fragment.也就是说两个Fragment之间进行参数的传递.查了很多资料.找到两种方法.一种 ...
- React Router v4 页面传值的三种方法
传值方法 1.props.params 使用React router定义路由时,我们可以给指定一个path,然后指定通配符可以携带参数到指定的path: <Route path='/user/: ...
- ASP.NET MVC Controller向View传值的几种方式
上几篇博文提到MVC和WebForm的区别,主要是MVC的Controller和View将传统的WebForm的窗体和后台代码做了解耦,这篇博文简单介绍一下在MVC中Controller向View是如 ...
- 简单讲解MVC(视图/模型/控制器)
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码 ...
- ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)
http://www.cnblogs.com/zyqgold/archive/2010/11/22/1884779.html 在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送 ...
- MVC5控制器传值的三种方式(ViewData,ViewBag,TempData),刚刚学习MVC5的新手,希望各位大神多多指教
mvc传值的三种方式:1.ViewData 在使用过程中需要类型转换 例子: ViewData["MyTitle"]="ViewData传值"; 引用: @Vi ...
- asp.net MVC 网站图片防盗链的几种方法
目录 1. 通过 URL Rewrite Module 组件 2. 通过 nginx 图片防盗链 3.自定义 HttpHandler 处理 4. 通过 MVC 自定义路由规则防盗链 5. 通过 MVC ...
随机推荐
- android的dmtracedump工具生成trace文件图片 'dot' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
http://jingyan.baidu.com/article/c910274bfa6c1fcd361d2df7.html http://www.cnblogs.com/albert1017/p/3 ...
- android stadio 快捷键最好的材料 android stadio大全 最牛逼的android stadio快捷键
一: .nn .if .for .toast .instanceof .switch 这些都是可以直接点的,一个变量然后.for ,如果这个这个变量是个集合,都可以.for 二: 关闭所有窗口 ctr ...
- Android自定义组件之简单组合
Android自定义控件有两种,一种是组合.比如一个linearlayout 里面有textview,imageview. 这样的好处是,写一个就可以多处使用. view_image_and_butt ...
- FIFO页面淘汰算法
1.优异虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行以下访问页号序列后1,3,4,2,1,3,5,1,2,5,4,2,会产生多少次缺页(9) 在 ...
- 简洁好看的form样式收藏
本文转载自 http://www.laozuo.org/3495.html 为了方便自己查阅所以搬运过来,如有侵权希望原作者联系我删除不要突然去法院告我呀! 颜色样式啥的都可以根据需求自己调整的,这些 ...
- laravel5.5容器
目录 1. 比较典型的例子就是 cache 缓存 2. 容器顾名思义,其实就是完成存取过程 2.1 绑定过程 简单绑定 绑定单例 绑定实例 绑定初始数据 2.2 解析过程 容器主要是为了实现控制反转, ...
- 《Cracking the Coding Interview》——第6章:智力题——题目4
2014-03-20 01:02 题目:无力描述的一道智力题,真是货真价实的智力题,让我充分怀疑自己智力的智力题.有兴趣的还是看书去吧. 解法:能把题目看懂,你就完成80%了,用反证法吧. 代码: / ...
- PICT:基于正交法的软件测试用例生成工具
成对组合覆盖这一概念是Mandl于1985年在测试Aad编译程序时提出来的.Cohen等人应用成对组合覆盖测试技术对Unix中的“Sort”命令进行了测试.测试结果表明覆盖率高达90%以上.可见成对组 ...
- Android自定义控件 -Canvas绘制折线图(实现动态报表效果)
有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas ...
- HDU 1937 F - Finding Seats 枚举
F - Finding Seats Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u S ...