【发布时间】:2012-06-19 15:09:38
【问题描述】:
所以我的视图中有一个 for 循环,它应该渲染出输入框。现在在这些输入框中,我想放置当你点击它们时消失的标签。这一切都很简单。现在可能是因为我的大脑首先是为 php 连接的,并且很难让它以 lambdas 和面向对象的方式思考,但我不知道该怎么做:
@{ for (int i = 0; i < 3; i++)
{
<div class="editor-label grid_2">User</div>
Model.Users[i].UserFirstName = "First Name";
Model.Users[i].UserLastName = "Last Name";
Model.Users[i].UserEmailAddress = "Email Address";
<div class="grid_10">
@Html.TextBoxFor(m => Model.Users[i].UserFirstName, new { @class = "user-input" })
@Html.TextBoxFor(m => Model.Users[i].UserLastName, new { @class = "user-input" })
@Html.TextBoxFor(m => Model.Users[i].UserEmailAddress, new { @class = "user-input-long" })
@Html.CheckBoxFor(m => Model.Users[i].IsUserAdmin)
<span> admin?</span>
</div>
<div class="clear">
</div>
}
}
并为用户初始化值。
您可能在想“这当然行不通。您会得到一个空引用异常”,您是对的。
我可能需要在其他地方初始化它们,但我没有意识到,但我不确定。我尝试了 [DefaultValue("First Name")] 路由,但不起作用。
我可能想错了,但我的大脑已经因为试图弄清楚如何将这些事件连接到控制器而被打断,所以任何帮助都将不胜感激!
【问题讨论】:
标签: c# asp.net-mvc-3 razor viewmodel asp.net-mvc-views