了解下拉列表,我试图添加一个RSD创建页面为nerddinner,如Scott Gu的博客与Html.DropDownListFor列出可用的晚餐.
我可以填充下拉列表但我无法获得下拉菜单以预先选择我想要的值("示例晚餐2").我使用启动器在数据库中播种一些晚餐对象.数据库是使用EF'代码第一种方法'的sql ce 4.对不起,我知道这是常见的问题,讨厌问,但老实说已经花了相当长的时间,但不能让它工作:
视图模型
public class RSVPViewModel
{
public SelectList DinnersList { get; set; }
public RSVP Rsvp { get; set; }
public string SelectedItem { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
调节器
//
//GET: /RSVP/Create
public ActionResult Create()
{
RSVP rsvp = new RSVP();
string selected = "Sample Dinner 2";
var typeList = new SelectList(dbc.Dinners.ToList(), "DinnerID", "Title", selected);
var viewModel = new RSVPViewModel { DinnersList = typeList, Rsvp = rsvp, SelectedItem = selected };
return View("Create", viewModel); …Run Code Online (Sandbox Code Playgroud) 对于asp mvc3客户端验证,是否可以将默认的,开箱即用的不引人注目的样式与jquery验证插件混合使用?
这是视图中的表单:
@using (Html.BeginForm("", "", FormMethod.Post, new { id = "newRatingForm" }))
{
@Html.ValidationSummary(true)
<fieldset>
<legend>Rating</legend>
<div class="editor-label">
@Html.LabelFor(model => model.Rate)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Rate)
@Html.ValidationMessageFor(model => model.Rate)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Email)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Email)
@Html.ValidationMessageFor(model => model.Email)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
Run Code Online (Sandbox Code Playgroud)
默认情况下,Unobtusive在模型属性上使用通常的验证属性.目标是用[fyneworks] [1] jquery星级评级插件替换表单中的'model.Rate'位,并使用jquery验证插件仅用于表单的那一部分:
<span>Your Rating:</span>
<div id="ratingStars">
<input class="star {split:2}" type="radio" name="Rating" value="0.5"/>
<input class="star {split:2}" type="radio" name="Rating" value="1.0"/>
<input class="star {split:2}" type="radio" name="Rating" value="1.5"/> …Run Code Online (Sandbox Code Playgroud)