在mvc中 怎么给@Html.HiddenFor()赋值

@Html.HiddenFor(model => model.CreatedBy, new { @value=currentInfo.UserID})  value始终是null@Html.TextBoxFor(model => model.CreatedBy, new { @value=currentInfo.UserID}) 这样子value就会有值


把value 的V改大写 就可以了@Html.HiddenFor(model => model.RenyuanID, new { @Value = @ViewData["renyuanID"] }


http://codego.net/334085/1. 你有一个视图模型,而不是ViewData的?强类型的辅助与结束For并采取了lambda表达式不能与弱类型结构,如工作ViewData。 个人而言,我不要‘的ViewData / ViewBag。我定义视图模型,并有我的控制器动作通过这些视图模型我的views。 例如,在你的情况我会定义一个视图模型:
public class MyViewModel
{
 [HiddenInput(DisplayValue = false)]
 public string CRN { get; set; }
}
有我的控制器动作填充此视图模型:
public ActionResult Index()
{
 var model = new MyViewModel
 {
  CRN = "foo bar"
 };
 return View(model);
}
再有我强类型视图EditorFor助手:
@model MyViewModel
@Html.EditorFor(x => x.CRN)
这将
<input id="CRN" name="CRN" type="hidden" value="foo bar" />
在生成的HTML。 2. 请记住第二[email protected]只会设定值时,它无法找到路径或模式匹配的数据字段。达林是正确的 CodeGo.net,使用视图模型。 3. 我相信这是一个简单的解决方案。 您Html.Hidden而不是Html.HiddenFor。看:
@Html.Hidden("CRN", ViewData["crn"]);
这将创建一个INPUT的标签type="hidden",与id="CRN"name="CRN",和里面的正确值value属性。 希望它可以帮助! 4. 在MVC 4以下工作
@Html.HiddenFor(x => x.CRN, new { @Value = "1" });
你需要在@价值一资‘V‘ 这里是我的模型
public int CRN { get; set; }
这里是输出的是当你看到在浏览器
<input value="1" data-val="true" data-val-number="The field CRN must be a number." data-val-required="The CRN field is required." id="CRN" name="CRN" type="hidden" value="1"/>
这里是
[HttpPost]
public ActionResult MyMethod(MyViewModel viewModel)
{
 int crn = viewModel.CRN;
}

 

时间: 2024-11-04 18:33:30

在mvc中 怎么给@Html.HiddenFor()赋值的相关文章

Asp.Net MVC中DropDownListFor的用法(转)

2016.03.04 扩展:如果 view中传入的是List<T>类型 怎么使用 DropList 既然是List<T> 那么我转化成 T  List<T>的第一个,最后一个不就是M吗? @Html.DropDownListFor(model=>model.First().Title, ViewData["Title"] as List<SelectListItem>, "标题", @"dropdown

ASP.NET MVC中商品模块小样

在前面的几篇文章中,已经在控制台和界面实现了属性值的笛卡尔乘积,这是商品模块中的一个难点.本篇就来实现在ASP.NET MVC4下商品模块的一个小样.与本篇相关的文章包括: 1.ASP.NET MVC中实现属性和属性值的组合,即笛卡尔乘积01, 在控制台实现  2.ASP.NET MVC中实现属性和属性值的组合,即笛卡尔乘积02, 在界面实现   3.再议ASP.NET MVC中CheckBoxList的验证   4.ASP.NET MVC在服务端把异步上传的图片裁剪成不同尺寸分别保存,并设置上

MVC中CheckBoxList的3种实现方式

比如,当为一个用户设置角色的时候,角色通常以CheckBoxList的形式呈现.用户和角色是多对多关系: using System.Collections.Generic; using System.ComponentModel.DataAnnotations; namespace MvcApplication2.Models { public class User { public int Id { get; set; } [Display(Name = "用户名")] public

ASP.NET MVC中实现属性和属性值的组合,即笛卡尔乘积02, 在界面实现

在"ASP.NET MVC中实现属性和属性值的组合,即笛卡尔乘积01, 在控制台实现"中,在控制台应用程序中实现了属性值的笛卡尔乘积.本篇在界面中实现.需要实现的大致如下: 在界面中勾选CheckBoxList中属性值选项: 把勾选的属性值进行笛卡尔乘积,每行需要填写价格: 我们暂且不考虑这些CheckBoxList是如何显示出来的(在后续有关商品模块的文章中会实现),还需考虑的方面包括: 1.从CheckBoxList中获取到什么再往控制器传? 对于每行的CheckBoxList来说

MVC中Controller与View中间的数据传递的常用方法

这几天正在学习MVC,顺便就将自己每天的学习心得记录下来与大家分享一下吧! 在MVC中,Controller与View之间传递数据是很频繁的事情,所以在这里就总结一下我自己在学习中使用的几种常用的方法: 将数据从Controller中传递到View中: ViewData:它是Key/Value字典集合 赋值方式(cs文件中): ViewData["Demo"]="Hello world!"; 使用方法(aspx文件中): <h1> <%:ViewD

MVC中页面传值方式总结

MVC中的页面传值,通常指Controller和view之间的数据传递,经常用到的有几种方式,总结如下: 一.Controller----------->View 1.ViewData 获取或设置一个字典,其中包含在控制器和视图之间传递的数据.使用ViewData是采用键值对的形式,对所定义的数据进行传递.在View中会自动识别到拥有唯一键值的ViewData,并将数据显示出来. 例子: public ActionResult() { <span style="white-space

关于asp.net MVC 中的TryUpdateModel方法

有比较才会有收货,有需求才会发现更多. 在传统的WebFormk开发工作中,我们常常会存在如下的代码块 //保存 protected void btnSubmit_Click(object sender, EventArgs e) { try { BLL.MoneyBll cun = new BLL.MoneyBll(); Model.Money m1 = new Model.Money(); m1.Commany = int.Parse(this.Commany.Text); m1.Count

(四)ASP.NET MVC 中 Controller 给 View 传递数据的方式

1. ViewData: 以 ViewData["keyname"] = value 这样键值对的方式进行数据传送.在对应的 cshtml 中用 @ViewData["keyname"] 来获取值. 2. ViewBag: ViewBag 是 dynamic 类型的,是对 ViewData 的一人动态类型封装,用起来更方便,和 ViewData 共同操作一个数据 .在 Controller 中使用 ViewBag.keyname=value 来赋值,在 cshtml

Asp.net mvc中controller与view间的如何传递数据

1.      Asp.net中的页面指令 无论是在java程序中还是在.net程序中,我们总是会看见一些@指令,那么这些常见指令的作用是什么呢? ?  @Page指令 只能在.aspx页中使用.如果在其他页面中使用会发生编译错误.比较常见的属性有: 1. Language 指出在编译内联代码块和页的<script>节中出现的所有代码时所使用的语言,默认的语言是Visual Basic .NET. 2. AutoEventWireup 指出是否启用页事件.默认为true. VS.NET开发的页