2017-01-28 2 views
0

Я хочу, чтобы на странице был выбран элемент HTML, чтобы отобразить выбор биллеров для оплаты. В дополнение к вариантам для биллеров я хочу отобразить опцию "Select" по умолчанию в элементе select. Я использую DropDownListFor хелперов сайтов, как указано ниже:Default option in MVC DropDownList

@Html.DropDownListFor(m => m.BillerId, new SelectList(Model.Billers, 
        "BillerId", "BillerName", "Select"), new { @class = "form-control" }) 
@Html.ValidationMessageFor(m => m.BillerId, "", new { @class = "text-danger" }) 

Выходной HTML я получаю, как указано ниже:

<select class="form-control valid" data-val="true" data-val-number="The field BillerId must be a number." id="BillerId" name="BillerId"> 
    <option value="1">Idea</option> 
    <option value="2">Airtel</option> 
</select> 

Значение по умолчанию Выбор не отображается. Пожалуйста, дайте мне знать, если я что-то допущу.

ответ

1

После selectList есть строковый параметр, называемый optionLabel, как показано ниже.

@Html.DropDownListFor(m => m.BillerId, new SelectList(Model.Billers, 
        "BillerId", "BillerName"), "Select", new { @class = "form-control" }) 
1

Из Вашего вопроса, то ) находится в неправильном месте.

Что у вас есть:

@Html.DropDownListFor(m => m.BillerId, new SelectList(Model.Billers, 
       "BillerId", "BillerName", "Select"), new { @class = "form-control" }) 

Что это должно быть:

@Html.DropDownListFor(m => m.BillerId, new SelectList(Model.Billers, 
       "BillerId", "BillerName"),"Select", new { @class = "form-control" }) 

Это поместит "Select" строку в правильном положении по отношению к перегруженным DropDownListFor методу .. конкретно optionLabel параметр.

Надеюсь, это поможет!

Смежные вопросы