2015-01-27 4 views
-2

Мне нужно создать форму с вопросом и текстовое поле, чтобы пользователь мог ввести свой ответ и отправить его для проверки. Кажется @using (Html.BeginForm()) недействителен с @foreach. Ниже приведен код, но я не уверен, что это правильный путь. Может кто-нибудь указать мне в правильном направлении, пожалуйста? Или как я могу использовать @using (Html.BeginForm()) для сценария.razor MVC foreach with @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> 

+0

Можете ли вы показать код с бритвенной формой, а не формой html – mattfetz

+2

Кстати, моя догадка о вашей проблеме заключается в том, что у вас был символ @ infront как для использования (HTML.beginform()), так и foreach. На самом деле вам не нужен @ infront для каждого, когда он окружен при использовании (HTML.beginform()) из-за его в области бритвы, и это будет бросать и ошибочно. – mattfetz

+0

Что такое подпись метода контроллера, которую вы отправляете обратно и что такое модель? Все, что вы здесь делаете, представляет пакет массивов значений Ans, которые не привязаны ни к чему и будут бессмысленными. –

ответ

2
@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); 
    } 
} 

Это разместим коллекция QuestionsText, дайте мне знать, если вы любой запрос.

+1

спасибо Moksh Shah – Milas

+0

Кто проголосовал за него, его приняли в качестве ответа –

-2

Вы должны использовать IEnumerable с моделями

+0

Это не истинное утверждение ... В течение 1 секунды поиск в Google опровергает это ... – IyaTaisho

Смежные вопросы