一、页面取值传给控制器

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 视图与控制器传值的几种方法的更多相关文章

  1. MVC控制器向View视图传值的三种方法

    首先创建一个MVC的项目,其中需要一个控制器(TestController),三个视图(index,edit,detail) 1.项目结构如下:

  2. 【ASP.NET MVC系列】浅谈ASP.NET MVC 视图与控制器传递数据

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  3. android fragment传递参数_fragment之间传值的两种方法

    在Activity中加载Fragment的时候.有时候要使用多个Fragment切换.并传值到另外一个Fragment.也就是说两个Fragment之间进行参数的传递.查了很多资料.找到两种方法.一种 ...

  4. React Router v4 页面传值的三种方法

    传值方法 1.props.params 使用React router定义路由时,我们可以给指定一个path,然后指定通配符可以携带参数到指定的path: <Route path='/user/: ...

  5. ASP.NET MVC Controller向View传值的几种方式

    上几篇博文提到MVC和WebForm的区别,主要是MVC的Controller和View将传统的WebForm的窗体和后台代码做了解耦,这篇博文简单介绍一下在MVC中Controller向View是如 ...

  6. 简单讲解MVC(视图/模型/控制器)

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码 ...

  7. ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)

    http://www.cnblogs.com/zyqgold/archive/2010/11/22/1884779.html 在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送 ...

  8. MVC5控制器传值的三种方式(ViewData,ViewBag,TempData),刚刚学习MVC5的新手,希望各位大神多多指教

    mvc传值的三种方式:1.ViewData 在使用过程中需要类型转换 例子: ViewData["MyTitle"]="ViewData传值"; 引用: @Vi ...

  9. asp.net MVC 网站图片防盗链的几种方法

    目录 1. 通过 URL Rewrite Module 组件 2. 通过 nginx 图片防盗链 3.自定义 HttpHandler 处理 4. 通过 MVC 自定义路由规则防盗链 5. 通过 MVC ...

随机推荐

  1. spring整合redis缓存,以注解(@Cacheable、@CachePut、@CacheEvict)形式使用

    maven项目中在pom.xml中依赖2个jar包,其他的spring的jar包省略: <dependency> <groupId>redis.clients</grou ...

  2. C#中窗体、MDI的使用心得

    1、Show()和ShowDialog()的差别,前者在执行之后,无需等待返回,多用于MDI窗体的显示(MDI窗体之间是并列的,可以随时切换,需要注意自己调整的页面的需求,是要并列,还是要等待其中一个 ...

  3. 超链接标签的CSS伪类link,visited,hover,active

    CSS伪类,是一种特殊的类,它针对到CSS选择器起作用,使选中的标签或元素产生特定的效果. CSS伪类的语法就是: 选择器 : 伪类名 { 属性 : 属性值 } 用的最多的伪类就是超链接a的伪类,有: ...

  4. 每天一个Linux命令(2):shutdown命令

    shutdown命令是系统关机命令.shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作. 语法 shutdown(选项)(参数) 选项 -c:取消已经在进行的 shutdo ...

  5. 测试基础面试题 + SQL 面试题(选择题有部分答案,难度:低)

    测试基础面试题 + SQL 面试题(选择题有部分答案,难度:低) 答案: .A .C .C .A .A .D

  6. 安装启动Apache2.4后报Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration错误

    LoadModule access_compat_module modules/mod_access_compat.so 取消这一行模块的注释,再重启服务即可. 搜索 mod_access_compa ...

  7. 求 n的阶乘

    def chengji(n): if n == 0: return 1 return chengji(n-1)*nprint(chengji(n))

  8. 孤荷凌寒自学python第七天 列表的复制与序列的基本运算

    孤荷凌寒自学python第七天 列表的复制与序列的基本运算 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) (同步语音:https://www.ximalaya.com/keji/191030 ...

  9. (原)Unreal 渲染模块引言Temp

            @author:白袍小道     引言 本文只在对Unreal渲染模块做一些详细的理解,务求能分析出个大概. 其中框架的思想和实现的过程,是非常值得学习和推敲一二的. 涉及资源系统,材 ...

  10. 计算机概念总结5-阿里云的了解2-slb

    https://help.aliyun.com/document_detail/27539.html?spm=a2c4g.11186623.6.544.3c3c5779UdHKeO 概述 负载均衡(S ...