Неверное расположение формы при размещении формы в заголовке таблицы - PullRequest
0 голосов
/ 02 декабря 2018

Я использую (успешно) заголовок моих таблиц HTML как форму.Эта форма используется для фильтрации строк таблицы ниже и отлично работает.Вот пример:

<table class="tableMedium">
    <tr>
        <form name="fiterRoles" action="<c:url value="/roles/filteredList" />" method="POST">
            <th>Name<br/>
                <input type="text" id="nameFilter" name="nameFilter" value="${nameFilter}" placeholder="Search" onchange="this.form.submit()" style="width: 100%;"/>
            </th>
            <th>Description<br/>
                <input type="text" name="descriptionFilter" value="${descriptionFilter}" placeholder="Search" onchange="this.form.submit()" style="width: 100%;"/>
            </th>
            <th width="${hasEditRights eq true ? '22%' : '6%'}">Controls<br/>
                <a class="buttonLink" href="<c:url value='/roles/list' />" title="Reset Filters">
                    <img src="${cp}/resources/images/resetFilters.png" height="20" width="20"/>
                </a>
                <c:choose>
                    <c:when test="${hasEditRights eq true}">
                        <a class="buttonLink" href="<c:url value='/roles/newRole' />" title="Add Role">
                            <img src="${cp}/resources/images/addIcon.png" height="20" width="20"/>
                        </a>
                    </c:when>
                </c:choose>
            </th>
        </form>
    </tr>
</table>

Единственная проблема заключается в том, что Eclipse постоянно говорит мне, что это недопустимое место для формы.Страница работает отлично, но, похоже, HTML5 этого не позволяет.Когда я скопировал и вставил пример, я заметил, что в этой таблице нет тега <thead>, но другие, использующие тот же стиль заголовка, имеют его, и Eclipse по-прежнему недоволен.Я попытался переместить теги <form> за пределы указанного тега <thead>, но безуспешно.

Если отключить предупреждение в Eclipse, могу ли я что-то сделать, чтобы этот код стал действительным?

1 Ответ

0 голосов
/ 03 декабря 2018

Поместите всю таблицу внутри тега формы.Жалоба на то, что тег формы появляется в середине элементов рендеринга таблицы, и хотя он может выводить правильно, размещение технически не в порядке.

Таблица может быть внутриэлемент формы:

<form>
  <table>
    <tr><td></td></tr>
    <!-- other table related elements -->
  </table>
</form>

... или форма может находиться внутри ячейки таблицы:

<table>
  <tr>
    <td>
      <form>
        <!-- form content -->
      </form>
    </td>
  </tr>
  <!-- other table related elements -->
</table>

Имейте в виду, однако, что было бы лучше избегать таблиц как "макета"СПИД ", как упоминалось ранее.

...