2012-02-15 70 views
0

我有一個MVC問卷應用程序,通過一組問題MVC模型綁定 - 如何通過一個列表作爲參數

<% foreach (var question in Model.CriteriaQuestionList) 
    { %> 
<fieldset> 
    <legend>   
     <%= Html.Encode(question.Description)%>   
    </legend> 
</fieldset> 
<%} %> 

我要提交的文本響應列表,使用模型綁定每個問題循環並且正在考慮這種方法

<% using (Html.BeginForm("Index", "ChampionCriteria", FormMethod.Post, new { @class = "themeform" })) 
    { %> 
<% int i = -1; //index %> 
<% foreach (var question in Model.CriteriaQuestionList) 
    { %> 
<fieldset> 
    <legend> 
     <% i = i + 1; %> 
     <%= Html.Encode(question.Description)%> 
     <input name="[<%=i%>].freeTextResponse" class="textarea" type="text" id="text<%=i%>" /> 
    </legend> 
</fieldset> 
<%} %> 

因此,此視圖可以使用模型綁定提交問題響應列表。

我可以使用html.textboxfor這種方法嗎?

回答

1

看看here爲列表的模型。如果你有可變長度,你可以看看here。你也可以看看Knockout.js的另一種做法。

+0

+1 - 桑德森一個人會很適合在OP的情況下,我認爲 – 2012-02-15 19:45:01

+0

好的謝謝。然而,對於前進的方式,我需要能夠使用HTML.TextBoxFor和HiddenFor,以便我可以使用服務器端驗證。我不想使用Javascript。 – DreamToCode 2012-02-22 21:00:08