我的索引方法呈现类型为强类型的视图(InitDetails
),自动生成的代码如下所示:
@ModelType BookingDeamon.InitDetails
@Using Html.BeginForm()
@Html.ValidationSummary(True)
@<fieldset>
<legend>Reservation</legend>
<div class="editor-label">
@Html.LabelFor(Function(model) model.Pickup)
</div>
<div class="editor-field">
@Html.EditorFor(Function(model) model.Pickup)
@Html.ValidationMessageFor(Function(model) model.Pickup)
</div>
<p>
<input type="submit" value="Create" onclick="SubmitMe()" />
</p>
</fieldset>
End Using
在上面的表格中,我想显示一个选择列表框,因为我将通过JQuery控制这个选择列表,根据不同的东西加载不同的内容。
我希望能够将该选择列表框的值作为分拣值传递。
当我尝试执行以下操作时:
@Html.DropDownListFor(Function(model) model.Pickup)
我收到以下错误:
Overload resolution failed because no accessible 'DropDownListFor' accepts this number of argument
用户点击提交按钮是否可行,而不是将Pickup(文本框)值带到控制器;它从下拉列表框中获取值并将其提交给控制器?
答案 0 :(得分:0)
试试这个
@Html.DropDownListFor(ModelType=>Model.Pickup, (IEnumerable<SelectListItem>)ViewData["Pickup"],"--Select--")
控制器中的
var Pickup= GetPickupList();
var PickupList= new SelectList(Pickup, "value", "Text", Pickup.DefaultSelectedValueIfAnyNeeded);
ViewData["Pickup"] = PickupList
编写函数GetPickupList() 返回一个Pickup值列表。