我有這樣的事情在我看來如何:按鈕的.NET MVC2陣列
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/ViewMasterPage.Master"
Inherits="System.Web.Mvc.ViewPage<MVC.ViewModels.EditViewModel>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<%
Html.EnableClientValidation();%>
<%
using (Html.BeginForm("Edit", "Edit", FormMethod.Post, new { @class = "myform" }))
{%>
<%for (int i = 0; i < Model.Activity.Count; ++i)
{%>
<div class="editor-field">
<%:Html.DropDownListFor(x => x.Activity[i].SelectedActivity, Model.SelectListActivity)%>
<input class="button" type="submit" value="<%:i%>" name="add_Button[<%:i%>]"/>
</div>
<%}
}
%>
</asp:Content>
控制器:
[HttpPost, Authorize]
public ActionResult Edit(string[] add_Button, FormCollection collection)
當我去我的控制器,只有在指數[0按鈕]被抓獲,爲什麼? 都ICollection<string> add_Button and string[] add_Button
沒有爲我工作。
在另一個字,你怎麼發送按鈕的排列是這樣的:
<input class="button" type="submit" value="Add" name="add_Button[0]" id="Submit3" />
<input class="button" type="submit" value="Add" name="add_Button[1]" id="Submit4" />
<input class="button" type="submit" value="Add" name="add_Button[2]" id="Submit5" />
<input class="button" type="submit" value="Add" name="add_Button[3]" id="Submit6" />
<input class="button" type="submit" value="Add" name="add_Button[4]" id="Submit7" />
<input class="button" type="submit" value="Add" name="add_Button[5]" id="Submit8" />
謝謝您的幫助
謝謝, 爲 「ADD_BUTTON [<%:i.ToString()%>」),那結束 「]」? – NHibernateNoobulator 2010-11-05 22:15:19
]」/>像這樣? – NHibernateNoobulator 2010-11-05 22:16:41
那是那裏。名稱=「按鈕[<%:i.ToString()%>]」你沒有正確引用我。 請勿在方括號和<%之間放置空格,因爲這些空格將出現在您的屬性中。另外不要忘記整型變量的.ToString()。使用<%時:它總是期望表達式返回要顯示的值。 – Chev 2010-11-05 22:18:33