我正在做一个学校项目,在我看来,我被困在一个下拉列表中。所以这是我的ViewModel:
using System;
using System.Collections.Generic;
using System.Linq;
using Klimatogrammen.Models.Domain;
namespace Klimatogrammen.ViewModels
{
public class VraagViewModel
{
public String Question { get; private set; }
public String Code { get; private set; }
public List<double> Answers { get; private set; }
public VraagViewModel(Parameter temp, Klimatogram klim)
{
Question = temp.Naam;
Code = temp.Code;
Answers = temp.GeefMogelijkeAntwoorden(klim).ToList();
}
}
}
和相关的观点
@model IEnumerable<Klimatogrammen.ViewModels.VraagViewModel>
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.Question)
</th>
<th>
@Html.DisplayNameFor(model => model.Answers)
</th>
@Html.DropDownListFor(Model)
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Question)
</td>
<td>
@Html.DropDownListFor(new SelectList(item.Answers))
</td>
</tr>
}
</table>
因此,我想列出一个双打作为对这个问题的答案。每个问题都有自己的特定答案,我想在每个问题旁边显示它们的可能性。
我尝试了一些尝试,但是找不到解决方案(从选择列表到selectitems等,但是我没有值或文本,我只想显示双打)。我的观点也必须保持IEnumerable
(我有我的理由)
谁能对此发表一些看法?
我实际上可以自己(与我的一个朋友)修复它。
这是我目前的观点:
@model IEnumerable<Klimatogrammen.ViewModels.VraagViewModel>
@{
Layout = null;
}
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"></script>
@using (Html.BeginForm("Vraag", "Vraag"))
{
@Html.ValidationSummary(true)
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.Vraag)
</th>
<th>
@Html.DisplayNameFor(model => model.Antwoorden)
</th>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Vraag)
</td>
<td>
@Html.DropDownListFor(p => item.Antwoord, item.test, "--- Kies een antwoord ---")
@Html.ValidationMessageFor(m => item.Antwoord)
</td>
</tr>
}
</table>
<div style="text-align:center;"><input type="submit" value="Controleer uw vragen" class="btn btn-default" /></div>
}
item.test
包含SelectListItem
我的模型中制作的清单。这样我就可以得到我的下拉框!谢谢大家的帮助;)
现在剩下的唯一问题是我的验证消息,如果我不填写任何内容,则会收到消息,我应该在每个框中输入内容。但是,当我填写1时,单击按钮会前进。(如果我找到一个选项,我也会在这里添加它)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句