一、页面取值传给控制器

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. echo shell commands as they are executed

    http://stackoverflow.com/questions/2853803/in-a-shell-script-echo-shell-commands-as-they-are-execute ...

  2. android 管理Touch事件

    The onInterceptTouchEvent() method gives a parent the chance to see any touch event before its child ...

  3. FlexGrid布局

    FlexGrid布局: Grid布局时网格大小是固定的,如果想网格大小不同的界面可以使用FlexGrid布局.FlexGrid是更加灵活的Grid布局.FlexGrid布局类是wx.FlexGridS ...

  4. packstack测试环境安装heat

    虚机all in one环境测试安装heat [root@armstrong ~]# tmux at -t mysql MariaDB [(none)]> CREATE DATABASE hea ...

  5. android自定义SlideMenu

                                                                   完美解决ListView中子项焦点不可被Touch的BUG. 1.在Ecl ...

  6. Android事件分发机制详解(1)----探究View的事件分发

    探究View的事件分发 在Activity中,只有一个按钮,注册一个点击事件 [java] view plaincopy button.setOnClickListener(new OnClickLi ...

  7. 膜拜膜拜c++

    被一个virtual搞得脑袋疼了好几天,明天继续虚函数+虚继承混合,伤不起,伤不起

  8. C#读取xml文件写入到TreeView中

    开发过程中我们会遇到一些读取xml文件的时候,下面是我学习的整理. 用XmlDocument读取加载 XmlDocument doc = new XmlDocument(); doc.Load(&qu ...

  9. myEclipse如何将程序部署到tomcat(附录MyEclipse调试快捷键)

    部署 1.选中你要部署的项目,在工具栏找到 Deploy MyEclipse J2EE Project to Server 2.单击Add,即出现如下界面.选择相应的Server,要和你在配置tomc ...

  10. sql server获取后天距离某一日期还有多少周的写法

    ),,),'2012-10-18 00:00:00.000')