2017-04-26 88 views
4

我有一個用剃刀創建的下拉列表,顯示2個選項:「顯示」或「隱藏」,它們分別具有「0」和「1」值。選擇在頁面加載剃鬚刀時選擇哪個選項html.dropdownlistfor

if (Model.Valeur == 0) 
{ 
     @Html.DropDownListFor(m => m.Valeur, 
     new List<SelectListItem> { 
     new SelectListItem { Value = "0" , Text = "Show", Selected = true }, 
     new SelectListItem { Value = "1" , Text = "Hide" }, 
     }, new { @class = "myselect" }) 
} 
else 
{ 
    @Html.DropDownListFor(m => m.Valeur, 
    new List<SelectListItem> { 
    new SelectListItem { Value = "0" , Text = "Show" }, 
    new SelectListItem { Value = "1" , Text = "Hide", Selected = true }, 
    }, new { @class = "myselect" }) 
} 

if條件我做了可以設置在頁面加載正確的價值,但我想知道是否有設置一個參數或其他選項的選擇值的方式

任何信息會樂意aprreciated。

+0

我認爲當您通過價值沒有條件時將被選中 – Usman

+0

Valuer屬性有幾個值,或者這個屬性只有值0或1? –

+0

m的value屬性可以是1或0,我想向用戶顯示根據它選擇的選項 –

回答

5

如果確定選擇了哪個選項,則可以使用簡寫。

@Html.DropDownListFor(m => m.Valeur, 
new List<SelectListItem> { 
new SelectListItem { Value = "0" , Text = "Show", Selected = Model.Valeur == 0 }, 
new SelectListItem { Value = "1" , Text = "Hide", Selected = Model.Valeur != 0 }, 
}, new { @class = "myselect" }) 
+2

這裏不需要使用三元運算符,您可以使用'Model.Valeur == 0'和'Model.Valeur!= 0' ;他們都會自己回覆真或假 – Vaterrenanburg

+0

這對我的需求非常合適,所以謝謝,我做的唯一改變是我刪除了三元運算符@Vaterrenanburg說 –

+0

@Vaterrenanburg你的權利,只需使用正確的數字(0或1)並忽略'?true:false'部分 –

相關問題