Squeak.ru - шаблоны программирования

Элемент «tr» не может быть вложен в элемент «tr»

У меня есть частичное представление, подобное этому:

@model List<user>

@foreach (var user in Model)
{
    <tr>
        <td>@user.name</td>
        <td>...</td>
    </tr>
}

И получить такую ​​ошибку:

Проверка (HTML5): элемент «tr» не может быть вложен в элемент «tr».

Меня это раздражает больше, чем следовало бы, но я хочу от него избавиться. Установка Обновления веб-стандартов не помогла. Любые идеи?

Изменить Это основное представление:

<table>
    <thead>
        <tr>
            <th>@i18n.name</th>
            <th>...</th>
        </tr>
    </thead>
    <tbody id="results">
        @Html.Partial("list_rows", @Model.users)
    </tbody>
</table>

Это сгенерированный HTML:

<table>
    <thead>
        <tr>
            <th>naam</th>
            <th>...</th>
        </tr>
    </thead>
    <tbody id="results">


<tr>
    <td>...</td>
    <td>...</td>
</tr>
<tr>
    <td>...</td>
    <td>...</td>
</tr>

    </tbody>
</table>

Изменить Прохождение всей страницы через валидатор W3C дает

Этот документ был успешно проверен как HTML5!


  • Как выглядит сгенерированный HTML? 20.03.2012
  • Как выглядит код вокруг частичного представления? У вас там тоже есть тр? 20.03.2012
  • @LockTar Я добавил основной вид. 20.03.2012
  • @TJ. Я добавил сгенерированный HTML. 20.03.2012
  • @Stijn Ваш сгенерированный HTML полностью действителен. 20.03.2012
  • Я попытаюсь сделать это в VS 11 сегодня вечером, и если проблема все еще существует, я напишу об ошибке в Connect. 20.03.2012
  • Ваш код выглядит хорошо. Возникает ли эта проблема и при удалении thead и tbody. Этого не должно случиться. Я думаю, что это ошибка в Visual Studio. 20.03.2012

Ответы:


1

Эта ошибка появляется, когда вы открываете элемент <tr> до того, как зациклитесь на своей модели. Пока код, который вы публикуете, правильный и не содержит ошибок.

20.03.2012

2

Просто убедитесь, что ваш код выглядит примерно так:

<table>

@foreach (var user in Model)
{
     <tr>
          <td>@user.name</td>
          <td>...</td>
     </tr>
}

</table>

Похоже, у вас уже есть открытый тег tr, в который вы пытаетесь добавить больше тегов tr. Если в вашей таблице уже есть теги tr, просто убедитесь, что все они закрыты до запуска цикла:

<tr>..</tr>
20.03.2012
  • У меня больше нигде нет открытого тега tr. Частичное представление не имеет тега table, потому что я использую бесконечную прокрутку для загрузки большего количества строк через AJAX. 20.03.2012
  • Я пропустил ваш код через онлайн-валидатор HTML5, и он подтвердил правильность. Поэтому я просто предполагаю, что это то, на что жалуется Visual Studio. Где именно вы получаете эту ошибку? В дизайнере? 20.03.2012
  • Он отображается на панели списка ошибок как предупреждение. Я предполагаю, что это ошибка, и единственный обходной путь - отключить проверку в Visual Studio? 20.03.2012
  • Я бы просто оставил его там. Если я знаю, что я прав, то я просто оставлю это. 20.03.2012
  • Новые материалы

    Угловая структура архитектуры
    Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

    «Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
    Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

    Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
    В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

    Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
    React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

    Создайте API с помощью Python FastAPI
    Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

    Веселье с прокси-сервером JavaScript
    Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

    Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
    Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...