2010-12-09 75 views
0

當第一次加載表單時,我有一個dropdownlist設置爲'--Select Item--'。提交表單後,我看不到所選項目被選中。它再次設置爲' - 選擇的項目 - '。可能是什麼問題呢?提交後設置DropdownList SelectedItem

<%= Html.DropDownList("lstDetails", new SelectList((IEnumerable)ViewData["DetailList"], "ID", "Details"), "--Select Item--")%> 

謝謝..

回答

0

我假設你想保存在某個地方選擇的項目。

<%: Html.DropDownFor(selectedId, new SelectList((IEnumerable)ViewData["DetailList"], "ID", "Details", (IEnumerable)ViewData["DetailList"].FirstOrDefulft(x => x.Id == selectedId), "--SelectItem--") %> 

您需要存儲選定項目的信息。我這裏使用的一個int稱爲

int selectedId 

我以爲你在detailList項目有一個標識字段。

0

最簡單的方法是將SelectList放入模型中。 (只要確保您在模型的構造函數中創建SelectList)。

查看:

<%= Html.DropDownList("lstDetails", Model.DetailList)%> 

控制器:

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyController(MyModel model) 
{ 
    return View(model); 
} 

型號:

class MyModel 
{ 
    public SelectList DetailList; 

    public MyModel() 
    { 
     DetailList = new SelectList(.... 
    } 
} 

所以您發佈後回來,如果你用相同型號返回視圖,則該表格將看起來與提交表單之前一樣。

相關問題