2016 系统设计第一期 (档案一)MVC form数据提交
前几天我发现 MVC 虽然解决了webform的问题但是用起来真的很麻烦,不知道是我刚接触的原因还是为什么,感觉有很多的局限性,对于form的提交一个form只能绑定一个action,代码如下:
@using (Html.BeginForm("Create", "Users", FormMethod.Post, new { id = "SaveUserForm", @class = "form-horizontal" }))
这段代码是一个form绑定的一个 创建用户 的添加方法。但是回想起来,在做系统的时候的有很多的弹出窗体可以 添加和修改功能其实是可以运用一个from就可以解决问题的。这就留下了疑问,如果做新增和修改功能的话,我是创建多个form?
而且一个form表单可能存在很多文本验证,这时候怎么办?例如下面我的添加页面。

代码:
<!-- 模态框(Modal)添加用户页面 开始 -->
<div class="modal fade" id="SaveUser_Modal" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
@*设定窗体宽度,只有在这个 class="modal-dialog" 这个div有效*@
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close"
data-dismiss="modal" aria-hidden="true">
×
</button>
<h4 class="modal-title" id="myModalLabel">
添加用户
</h4>
</div>
@using (Html.BeginForm("Create", "Users", FormMethod.Post, new { id = "SaveUserForm", @class = "form-horizontal" }))
{
<div class="modal-body">
<div class="form-group">
<label for="LoginName" class="col-sm-2 control-label">账号</label>
<div class="col-md-8">
@Html.TextBox("LoginName", "", new { @class = "form-control", placeholder = "请输入账号" })
</div>
</div>
<div class="form-group">
<label for="LoginPwd" class="col-sm-2 control-label">密码</label>
<div class="col-md-8">
@Html.TextBox("LoginPwd", "", new { @class = "form-control", placeholder = "请输入密码" })
</div>
</div>
<div class="form-group">
<label for="confirmLoginPwd" class="col-sm-2 control-label">确认密码</label>
<div class="col-md-8">
@Html.TextBox("confirmLoginPwd", "", new { @class = "form-control", placeholder = "请输入密码" })
</div>
</div>
<div class="form-group">
<label for="FullName_C" class="col-sm-2 control-label">中文名</label>
<div class="col-md-8">
@Html.TextBox("FullName_C", "", new { @class = "form-control", placeholder = "请输入中文名" })
</div>
</div>
<div class="form-group">
<label for="FullName_E" class="col-sm-2 control-label">英文名</label>
<div class="col-md-8">
@Html.TextBox("FullName_E", "", new { @class = "form-control", placeholder = "请输入英文名" })
</div>
</div>
<div class="form-group">
<label for="CreateTime" class="col-sm-2 control-label">创建时间</label>
<div class="col-md-8">
<div class="input-group date form_date" data-date="" data-date-format="" data-link-field="CreateTime" data-link-format="yyyy-mm-dd">
<input class="form-control" size="10" type="text" value="" readonly>
@*<span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>*@
<span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
</div>
@Html.Hidden("CreateTime")
</div>
</div>
<div class="form-group">
<label for="Email" class="col-sm-2 control-label">邮箱</label>
<div class="col-md-8">
@Html.TextBox("Email", "", new { @class = "form-control", placeholder = "请输入邮箱" })
</div>
</div>
<div class="form-group">
<label for="QQ" class="col-sm-2 control-label">QQ</label>
<div class="col-md-8">
@Html.TextBox("QQ", "", new { @class = "form-control", placeholder = "请输入QQ" })
</div>
</div>
<div class="form-group">
<label for="Gender" class="col-sm-2 control-label">性别</label>
<div class="col-md-8">
<label class="checkbox-inline">
@Html.RadioButton("Gender", 1, new { @id = "radio1", @name = "Gender" })男
</label>
<label class="checkbox-inline">
@Html.RadioButton("Gender", 0, new { @id = "radio0", @name = "Gender" })女
</label>
</div>
</div>
<div class="form-group">
<label for="Mobile" class="col-sm-2 control-label">手机</label>
<div class="col-md-8">
@Html.TextBox("Mobile", "", new { @class = "form-control", placeholder = "请输入手机" })
</div>
</div>
<div class="form-group">
<label for="Telephone" class="col-sm-2 control-label">联系电话</label>
<div class="col-md-8">
@Html.TextBox("Telephone", "", new { @class = "form-control", placeholder = "请输入联系电话" })
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" id="captchaOperation"></label>
<div class="col-md-8">
<input type="text" class="form-control" name="captcha" placeholder="请输入请输入结果" />
</div>
</div>
<input type="hidden" id="UserId" value="" />
@Html.Hidden("CreateTime")
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default"
data-dismiss="modal">
关闭
</button>
<button type="button" class="btn btn-info" id="validateBtn">重新验证</button>
<button type="button" class="btn btn-info" id="resetBtn">重置</button>
<button type="submit" class="btn btn-primary">
提交更改
</button>
</div>
}
</div><!-- /.modal-content -->
</div>
</div>
<!-- 模态框(Modal)添加用户页面 结束 -->
2016 系统设计第一期 (档案一)MVC form数据提交的更多相关文章
- 2016 系统设计第一期 (档案一)MVC bootstrap model弹出子页面
通过bootstrap 弹出modal-dialog 子页面 ,例如我要弹出子页面:areaitem_sub_One.html. 具体步骤如下: 第一步:新建 areaitem_sub_One.ht ...
- 2016 系统设计第一期 (档案一)MVC 相关控件整理
说明:前者是MVC,后者是boostrap 1.form 表单 @using (Html.BeginForm("Create", "User", FormMet ...
- 2016 系统设计第一期 (档案一)MVC 和 Bootstrap 表单转换
bootstrap <form role="form"> <div class="form-group"> <label for= ...
- 2016 系统设计第一期 (档案一)MVC 控制器接收表单数据
1.FormCollection collection user.UserId =Convert.ToInt32(collection["UserId"]); /// < ...
- 2016 系统设计第一期 (档案一)jQuery ajax serialize()方法form提交数据
jQuery ajax serialize()方法form提交数据,有个很奇怪的问题,好像不能取到隐藏控件的值. //点击提交按钮保存数据 $('#btn_submitUser').click(fun ...
- 2016 系统设计第一期 (档案一)MVC a标签 跳转 Html.ActionLink的用法
html: <a class="J_menuItem" href="baidu.com">权限管理</a> cshtml: 原有样式: ...
- 2016 系统设计第一期 (档案一)MVC bootstrap model弹出窗
局部代码: <!-- 按钮触发模态框 --> <div style=""> <button class="btn btn-primary&q ...
- 2016 系统设计第一期 (档案一)MVC ajax 获取json数据
我在做一张表的增删改查的时候,在编辑的时候,需要获取当前选择行对应的Id,然后并且把选择行的Id的对于的数据取出来,代码如下: 列表a标签绑定: Js代码: url: '/Users/GetUserB ...
- 2016 系统设计第一期 (档案一)MVC 引用 js css
@Styles.Render("~/Bootstrap/css/bootstrap-theme.css") @Scripts.Render("~/jQuery/jquer ...
随机推荐
- 实现Square类,让其继承自Rectangle类,并在Square类增添新属性和方法,在2的基础上,在Square类中重写Rectangle类中的初始化和打印方法
实现Square类,让其继承自Rectangle类,并在Square类增添新属性和方法,在2的基础上,在Square类中重写Rectangle类中的初始化和打印方法 #import <Found ...
- linux-查看磁盘硬盘空间
du :查看文件和目录的磁盘使用情况 用法 du [选项][文件] -s:仅显示总计只列出最后加总的值 -h:以K/M/G为单位提高信息的可读性 du -sh文件名 显示文件的大小 du -sh文件 ...
- LeetCode 231
Power of Two Given an integer, write a function to determine if it is a power of two. /************* ...
- 【BZOJ1212】[HNOI2004]L语言 Trie树
[BZOJ1212][HNOI2004]L语言 Description 标点符号的出现晚于文字的出现,所以以前的语言都是没有标点的.现在你要处理的就是一段没有标点的文章. 一段文章T是由若干小写字母构 ...
- TSQL基础(一) - 查询
select 1.查询一张表(orders)的所以纪录 select * from Orders 2.查询一张表(orders)某字段的所有记录 select OrderID,OrderDate fr ...
- kettle列转行
- ASSERT报错:error C2664: “AfxAssertFailedLine”: 不能将参数 1 从“TCHAR []”转换为“LPCSTR”
转载请注明来源:崨雁嫀筝 http://www.cnblogs.com/xuesongshu 这个错误是我在把tinyxml修改为宽字符(Unicode)版本时候遇到的问题,我首先按关键字把所有有ch ...
- VScript 函数调用的两种分类:Sub过程和Function过程
来源:http://soft.zdnet.com.cn/software_zone/2007/0925/523318.shtml 在 VBScript 中,过程被分为两类:Sub 过程和 Functi ...
- 【转】Android属性之build.prop,及property_get/property_set
简要分析一下build.prop是如何生成的.Android的build.prop文件是在Android编译时收集的各种property(LCD density/语言/编译时间, etc.),编译完成 ...
- Cocos移植到Android-使用Eclipse交叉编译打包
如果对命令行望而生畏,我们可以借助于安装有ADT插件的Eclipse工具实现交叉编译.使用Eclipse进行交叉编译,首先需要将要编译的工程导入到Eclipse的Workspace中,Workspac ...