2016-05-03 6 views
0

テーブルのデータを使用して作成したドロップダウンリストがあります。DropDownListでデフォルト値を選択できません

次に、これをViewBagに割り当て、HTMLの要素にバインドします。

デフォルトでは値を設定できません。たとえ私が静的価値を提供しているとしても。 は、ここに私のコード -

CS

ViewBag.parent_categories = new SelectList(all_categories, "ID", "Category", "1"); 

CSHTML

@Html.DropDownListFor(model => model.EOn, @ViewBag.parent_categories as SelectList, new { @class = "form-control" }) 

だが、結果は、選択した値は常に空白であることです。

何が間違っていますか?

+2

model.EOnの値は何ですか? DropDownListForを呼び出すと、リストの選択された値はモデルプロパティの値になります。 –

+0

これは私の答えです。私はEOnに別の価値を提供していた – kamalpreet

+0

これらの両方の値は一致していなければなりませんか? – kamalpreet

答えて

0

はあなたがDropDownListを使用するならば、構文は少し異なっている場合にはdropdownlistfor

@model DropDownList.ViewModel.Person 

@Html.DropDownListFor(m => m.selectedPersonID, 
{new SelectListItem(){ Value="0", Text= "--Please select a Person--"}) 

を定義するビューに今viewmodel-

namespace DropDownList.ViewModel 
{ 
    public class Person 
    { 
     public int selectedPersonID { get; set; } 
     //your other props 
    } 
} 

人を定義していると言います。

@Html.DropDownList("slPerson", Model.PersonList, Model.SelectedPersonID) 

とのviewmodel対応する構造は、これが疑いをクリア

@model namespace.MyViewModel 

public class MyViewmodel { 

    public List<SelectListItem> PersonList {get; set} 
    public string SelectedPersonID {get; set} 

    public MyViewModel(){ 
     PersonList = new List<SelectListItem>(); 
     SelectedPersonID = "100"; //default values go here 
    } 

ホープであろう。

関連する問題