我試圖將checkboxes的值保存在查詢字符串中的同名表單(level和coursetype)中,以便我可以檢查哪些被選中。在第一次提交時,我得到:在MVC中處理複選框的最佳方式
Search?coursetype=1416&coursetype=post16&level=3&level=6&level=1
這很好,所以我可以檢查值返回到視圖中並勾選先前選擇的值。
然而,當我使用pagedList或Html.ActionLink,例如:
Html.ActionLink("search again", "Search", new { coursetype = ViewData["coursetype"], level = ViewData["level"]})
我得到:Search?&coursetype=System.String%5B%5D&level=System.String%5B%5D
我試圖從陣列中解析這些值,但後來當我送他們到htmlAttributes在ActionLink中,我得到:Search?coursetype%3D1416&coursetype%3Dpost16&level%3D3&level%3D6&level%3D1
,所以視圖無法找到複選框的值。
控制器:
[AcceptVerbs("GET")]
public ActionResult Search(string[] coursetype, string[] level)
{
ViewData["level"] = level;
ViewData["coursetype"] = coursetype;
return View();
}
原始ViewData如何設置? – 2010-09-01 22:10:45
從一組複選框填充 – 2010-09-02 07:48:30