Входной тег не отображается, если входной тег помещен в foreach - PullRequest
0 голосов
/ 24 апреля 2019

По какой-то причине входные теги не отображаются, если я помещаю их в цикл foreach.

@foreach (var item in Model.KhuyenMais) { 
    <input class="form-control" name="SoLuongKM" value="@item.SoLuong" />
}

Ответы [ 3 ]

1 голос
/ 24 апреля 2019

Вы можете проверить и отобразить, когда у модели нет элемента

@if(Model.KhuyenMais != null && Model.KhuyenMais.Count > 0)
{
     foreach (var item in Model.KhuyenMais) 
     { 
        <input class="form-control" name="SoLuongKM" value="@item.SoLuong"/>
     }
}
else
{
   <span> There is no result </span>
}
1 голос
/ 24 апреля 2019

Это правильный синтаксис и всегда отображать тег ввода.

Вам нужно проверить Model.KhuyenMais может быть его длина равна нулю.

<p>KhuyenMais count: @Model.KhuyenMais.Count</p>

@foreach (var item in Model.KhuyenMais) { 
    <input class="form-control" name="SoLuongKM" value="@item.SoLuong" />
}
0 голосов
/ 24 апреля 2019

Я предполагаю, что ваша модель не имеет значений Model.KhuyenMais.

См. Следующий фрагмент кода:

.CSHTML код файла

@foreach (var item in MyWebApp.Controllers.MyClass.AssetList )
{
    <input class="form-control" name="SoLuongKM" value="@item.AssetName" />
}

C #Код файла контроллера

public ActionResult TreeListExport()
{
    List<Asset> oAsset = new List<Asset>();

    oAsset.Add(new Asset {AssetId =1, AssetName ="computer"});
    oAsset.Add(new Asset {AssetId =1, AssetName ="keyboard"});
    oAsset.Add(new Asset {AssetId =1, AssetName ="mouse"});

    MyClass.AssetList = oAsset;

    return View();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...