0
我有一個有點奇怪的情況,我有動態生成表單上的字段 - 所有下拉列表。這些選擇對應於我想彙總在一起形成位掩碼的二進制值。我這樣生成下拉列表:mvc4動態生成的字段從表單丟失
<table class="center">
@foreach (var field in Model.Fields)
{
<tr>
<td>@field.DisplayText:</td>
<td>
@Html.DropDownList(field.FieldName, new SelectList(field.Options, "FlagValue", "Text", field.SelectedValue), "(doesn't matter)")
</td>
</tr>
}
</table>
這似乎工作 - 就在視圖中呈現正確的HTML。但我的控制器沒有收到這些字段中的選擇。我試圖通過動態字段循環。
在下面的代碼中,PatientSelectorEditor是我的ViewModel。
private void GetFlagInfo(PatientSelectorEditor pse, out string description, out long flags)
{
description = null;
flags = 0;
// get list of all possible fields that could be in the view.
pse.Fields = InitPatientSelectorFields(0);
foreach (PriceFlagField field in pse.Fields)
{
foreach (var option in field.Options)
{
// was something selected here?
if (Request[field.FieldName].Equals(option.FlagValue))
{
description += ", " + option.Text;
flags += option.FlagValue;
}
}
}
}
是去
Request[field.Name]
線路沒有發現在我看來,動態生成的領域。
我在做什麼錯?
你擁有包括你的窗體標記內DROPDOWNLIST明確的字符串比較? – 2013-02-13 04:59:18
請發佈您的完整的HTML頁面,以便我們可以更好地進行分析。 – 2013-02-13 09:37:10