MVC 表单提交
用户提交表单
写法一(推荐)
一,不带参数
<body>
<!--一下写法生成:<form action="/Home/Index" method="post"> BeginForm里不带参数,就表示请求从哪里来,表单就提交到哪里去。
因为当前视图是Home控制器下的Index视图。所以,当请求这个Index视图的时候,form的action的提交的地址就是/Home/Index
-->
@using (Html.BeginForm("Add","Home",new{ id=}))
{
<input type="text" name="userName" />
} </body>
二,带参数
<body>
<!--一下写法生成:<form action="/Home/Add/200?pric=25" method="get"> -->
@using (Html.BeginForm("Add","Home",new{ id=,pric=},FormMethod.Get))
{
<input type="text" name="userName" />
} </body>
三,程序员自己指定一个路由,来生成一个action的URL。使用Html.BeginRouteForm(...)
不带参数:
<body>
<!--由程序员指定一个路由规则,来生成一个action的URL -->
<!--以下代码最后生成这样:<form action="/Index/Home" method="post"> 注意:按照Default2这个路由规则来生成的,所有Index在前面-->
@using (Html.BeginRouteForm("Default2"))
{
<input type="text" name="userName" />
} </body>
带参数:
<body>
<!--由程序员指定一个路由规则,来生成一个action的URL -->
<!--以下代码最后生成这样:<form action="/Index/Home/100" method="post"> 注意:按照Default2这个路由规则来生成的,所有Index在前面-->
@using (Html.BeginRouteForm("Default2",new{controller="Home",action="Index",Id=},FormMethod.Post))
{
<input type="text" name="userName" />
} </body>
下面是路由规则
namespace MvcAppEF
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Test", action = "Index2", id = UrlParameter.Optional }
); routes.MapRoute(
name: "Default2",
//注意:为了测试Html.BeginRouteForm,我将{action}这个占位符与{controller}占位符换了一下位置。我们来检查一下Html.BeginRouteForm最后生成什么样的url?
url: "{action}/{controller}/{id}/{name}",
defaults: new { controller = "Test", action = "Index2", id = UrlParameter.Optional, name = UrlParameter.Optional }
);
}
}
}
写法二(不推荐)
不带参数:
<body>
<!--一下写法生成:<form action="/Home/Add" method="post">-->
@{Html.BeginForm("Add", "Home");} <input type="text" name="userName" /> @{Html.EndForm();}; <!--这段代码最终生成:</form>;--> </body>
带参数:
<body>
<!--一下写法生成:<form action="/Home/Add/100" method="post">-->
@{Html.BeginForm("Add", "Home", new { id= },FormMethod.Post);} <input type="text" name="userName" /> @{Html.EndForm();}; <!--这段代码最终生成:</form>;--> </body>
MVC 表单提交的更多相关文章
- [Spring MVC] - 表单提交
Spring MVC自带的表单标签比较简单,很多时候需要借助EL和JSTL来完成. 下面是一个比较简单的表单提交页面功能: 1.User model package com.my.controller ...
- asp.net mvc表单提交的几种方式
asp.net MVC中form提交和控制器接受form提交过来的数据 MVC中form提交和在控制器中怎样接受 1.cshtml页面form提交2.控制器处理表单提交数据4种方式方法1:使用传统的R ...
- Asp.Net Mvc表单提交(批量提交)
Asp.Net Mvc中Action的参数可以自动接收和反序列化form表单的值, 采用form表单提交 name=value类型,只要Action参数的变量名和input的name相同就行 html ...
- ASP.NET MVC 表单提交多层子级实体集合数据到控制器中
于遇到了项目中实体类嵌套多层子级实体集合,并且子级实体集合的数据需要提交保存到数据库中的问题.针对此情况需要进行一些特殊的处理才可以将整个 实体类及子级实体集合数据提交表单到控制器中,解决的方法是根据 ...
- Spring MVC表单提交
实际应用中,列表中的单条记录的修改,可能需要传很多对象参数到后台服务器,Spring MVC表单标签<form:> 提供了一种简洁的提交方式. <form id="form ...
- MVC 表单提交【转】
[转自]:http://www.cnblogs.com/dengdl/archive/2011/07/14/2106849.html 在做Asp.Net MVC项目中,都知道View负责页面展示数据或 ...
- ASP.NET\ASP.NET MVC表单提交遇到的问题结论
同步提交的两种基本方式 1,用type=“submit”按钮.form没有必要runat=“server” <form method="post" action=" ...
- Asp.Net Mvc表单提交之List集合
一.说明 1.Asp.Net Mvc中Action的参数可以自动接收和反序列化form表单的值, 2.对于name=value类型,只要Action参数的变量名和input的name相同就行,不区分大 ...
- MVC表单提交写法1
初学MVC,感觉跟以前的aspx页面差别很大,我们就先来看看MVC的表单是怎么提交的吧. 现在我们用一个最简单的例子来看一看MVC是怎么提交表单的(这一个例子中,我们的关注点是如何提交表单,所以不涉及 ...
随机推荐
- MIME协议(详解范例)
转载一:http://blog.csdn.net/bripengandre/article/details/2192982 转载二:http://blog.csdn.net/flfna/article ...
- 51nod 1021 石子归并
区间dp 递推比递归的常数要小 所以还是尽量学会递推吧 看题解 各种恶心啊 有木有 还是视频讲的直接呃 不过就是讲的有点儿慢 链接:https://www.bilibili.com/vide ...
- BZOJ5189: [Usaco2018 Jan]Cow at Large 贪心+LCA
BZOJ没有题面QAQ,题目链接 洛谷有:题目链接 这题首先要读懂题..(洛谷的翻译有点迷 就是指定根节点,然后可以在叶子结点放个人,然后奶牛在根,问最少要在叶子结点放多少人才能让奶牛走不到叶子结点( ...
- springboot中配置主从redis
测试redis的主从配置 redis实例 文件夹名称如下 redis_master_s redis_slaver1_s redis_slaver2_s redis.conf文件 master的redi ...
- spring boot application.properties/application.yml 配置属性大全
来自官网 https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.h ...
- 《重构网络:SDN架构与实现》Chapter7 SDN与网络虚拟化 随笔
参考: <重构网络:SDN架构与实现>,作者:杨泽卫.李呈. Chapter7 SDN与网络虚拟化 结构 7.1 网络虚拟化 7.1.1 为什么需要网络虚拟化技术 7.1.2 网络虚拟化 ...
- UOJ #79. 一般图最大匹配
板子: #include<iostream> #include<cstdio> #include<algorithm> #include<vector> ...
- RabbitMQ入门_15_访问控制
参考资料:https://www.rabbitmq.com/access-control.html A. 核心概念 Virtual Host:虚拟主机为 RabbitMQ 中的资源提供了逻辑分组与隔离 ...
- angular5 路由传参的几种方式
此处介绍三种方式 方式一: 问号后面带的参数, 例如:/product?id=1&name=iphone还可以是: [routerLink]="['/books']" [q ...
- 一套C#语言的日志控制系统
using System; public delegate void LogHandle(Object log); public class PlayerHandle { public static ...