Я хочу добавить динамический класс начальной загрузки BG на div, который находится в цикле foreach - PullRequest
1 голос
/ 03 октября 2019

Я получаю данные из таблицы под названием отдел, которая находится на панели администратора и является динамической. Теперь я хочу добавить классы BS4, такие как «success», «primary» и так далее, в мой div. Проблема в том, что он находится в цикле, поэтому он печатает один и тот же класс каждый раз. Как добавить динамический?

<div class="row mt-2">
@foreach (var item in ViewBag.data)
{

   var department__url = Url.Action("Some Data", new { Some Data= item.Some Data});


            <div class="col-xs-12 col-md-6 col-lg-6 col-xl-4">

             <a href="Some Data" class="card-box noradius noborder bg-secondary">
                    <i class="fa fa-money float-right text-white"></i>
                    <h6 class="text-white text-uppercase m-b-20">Some Data</h6>
                    <h6 class="m-b-20 text-white">
                        <label class="label bg-primary">
                            <span class="counter">Some Data</span> New
                        </label>
                        <label class="label bg-warning">
                            <span class="counter">some data </span> Some Data
                        </label>
                        <label class="label bg-success">
                            <span class="counter">Some Data</span> Done
                        </label>
                    </h6>
                </a>

            </div>
}
</div>

1 Ответ

1 голос
/ 04 октября 2019

Как я уже упоминал в своем комментарии. Я спрашивал, есть ли в вашей модели отчетливые данные, которые определили цвет bg. Допустим, например, у вас есть модель, подобная этой

public class SomeModel
{
  public int Id {get; set;}
  public string SomeData {get; set;}
}

, и, по вашему мнению, вы возвращаете список, скажем, 4 элемента, как эта ...

var result = IEnummerable<SomeModel>
{
  new SomeModel{SomeData = "Important Stuff"},
  new SomeModel{SomeData = "Important Stuff"},
  new SomeModel{SomeData = "Not Important Stuff"}
  new SomeModel{SomeData = "Important Stuff"}
}

Еслив представлении вы хотите, чтобы у «Важного материала» было bg-danger, а у «Не важного материала» - bg-warning, вы можете поместить это в класс тега метки

"@(Somedata == "Important Stuff" ? "bg-danger": "bg-warning")

Еслиэто не относится к вам, и вы просто хотите получить bg-colour, вы можете иметь массив строк с нужными вам классами и просто циклически повторять их. Однако вы должны убедиться, что размер массива совпадает с длиной вашего списка. Либо это, либо кружок обратно к вершине массива, когда отображается класс в последнем индексе. Звучит грязно, но я не могу думать ни о чем другом, чтобы достичь этого.

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