我需要创建一个带有问题和文本框的表单,以允许用户输入他们的答案并发送以进行验证。似乎@using (Html.BeginForm())
对@foreach
无效.下面是代码,但我不确定这是否是正确的方法。有人可以指出我正确的方向吗?或者如何将@using (Html.BeginForm())
用于方案。
@model PairingTest.Web.Models.QuestionnaireViewModel
<html>
<head>
<title>@Model.QuestionnaireTitle</title>
</head>
<body>
<form action="~/Questionnaire/ProcessData" method="post">
@foreach (var s in Model.QuestionsText) {
<text> Question :</text>@s <br />
@Html.Label("Ans");<br />
@Html.TextBox("Ans");<br />
}
<button type="submit">Submit</button>
</form>
</body>
@using(Html.BeginForm())
{
for(int i=0;i< Model.QuestionsText.Count;i++)
{
<text> Question :</text>@s <br />
@Html.Label("Ans");<br />
@Html.TextBoxFor(m => Model.QuestionsText[i].Ans);
}
}
这将发布问题文本的集合,如果您有任何疑问,请告诉我。
您需要在模型中使用 IEnumerable