2016-04-07 3 views
2

Я изменил вход по умолчанию asp.net mvc 6 и хотел добавить выпадающий список с taghelper select, но похоже, что он производит неправильный вывод.ASP.NET 5 MVC6 select taghelper производит неправильный вывод

Я добавил Select-taghelper-элемент, так это выглядит следующим образом:

<form asp-controller="Account" asp-action="Register" method="post" class="form-horizontal" role="form"> 
    <div class="form-group"> 
     <label asp-for="Tenant" class="col-md-2 control-label"></label> 
     <div class="col-md-10"> 
      <select asp-for="Tenant" asp-items="ViewBag.Tenants" class="form-control" /> 
      <span asp-validation-for="Tenant" class="text-danger"></span> 
     </div> 
    </div> 
    <div class="form-group"> 
     <div class="col-md-offset-2 col-md-10"> 
      <button type="submit" class="btn btn-default">Register</button> 
     </div> 
    </div> 
</form> 

после добавления выберите тег, то кнопка представить не отображается больше - отображается выпадающий, но не содержит никаких данных, но с использованием контрольных точек Viewbag.Tenants содержит данные. Когда я удаляю первый div с помощью тега select, отображается кнопка.

Любая идея, что здесь не так?

+0

Вы пробовали с @ перед ViewBag? –

+0

@JoeAudette спасибо, попробовал, не имеет значения. –

ответ

1

Ваша разметка неправильная. Не используйте сам закрывающий тег select. Имейте явный закрывающий тег.

Это должно сработать.

<select asp-for="Tenant" asp-items="ViewBag.Tenants" class="form-control"></select> 
+1

Ах, ты гений! Благодаря! :) –

+0

Я пробовал это и странно, я получаю список с несколькими = "multiple" в качестве списка выбора, а не в раскрывающемся списке? –

+0

@MarkRedman Это зависит от типа свойства, которое вы используете для 'asp-for'. Если это тип массива (' int [] '/' string [] '), он будет отображаться с несколькими атрибутами – Shyju

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