【问题标题】:How to resolve the following HTML error?如何解决以下 HTML 错误?
【发布时间】:2015-07-04 07:16:11
【问题描述】:

我的 django 模板文件中有以下几行:-cart.html:-

<td class="right">
    <form method="post" action="." class="cart">
        <label for="quantity">Quantity:</label>
        <input type="text" name="quantity" value="{{ item.quantity }}" id="quantity" size="2" class="quantity" maxlength="5" />
        <input type="hidden" name="item_id" value="{{ item.id }}" />
</td>
<td>
    <input type="submit" name="submit" value="Update" />
    </form>
</td>

在 td 的第一个结束标记,即第一个 &lt;/td&gt;,我收到以下错误: 元素表单未关闭。请帮我纠正此错误。

【问题讨论】:

    标签: html django-templates


    【解决方案1】:

    HTML 标记 必须以直接分层方式 构造。关闭在先前关闭的元素中打开的标签是不正确的,并且通常会产生错误和问题。

    将表格包含在表格数据中,如下所示:

    <td class="right">
        <form method="post" action="." class="cart">
            <label for="quantity">Quantity:</label>
            <input type="text" name="quantity" value="{{ item.quantity }}" id="quantity" size="2" class="quantity" maxlength="5" />
            <input type="hidden" name="item_id" value="{{ item.id }}" />
            <input type="submit" name="submit" value="Update" />
        </form>
    </td>
    

    或将整个表格或表格元素包含在表单中,如下所示:

    <form method="post" action="." class="cart">
        <td class="right">
            <label for="quantity">Quantity:</label>
            <input type="text" name="quantity" value="{{ item.quantity }}" id="quantity" size="2" class="quantity" maxlength="5" />
            <input type="hidden" name="item_id" value="{{ item.id }}" />
        </td>
        <td>
            <input type="submit" name="submit" value="Update" />
        </td>
    </form>    
    

    我认为后一种解决方案是您正在寻找的解决方案。

    【讨论】:

      【解决方案2】:

      好吧,尝试在第一行添加制表符,使其与结束标记对齐。

      然后我会修改代码并尝试一下。这里有一篇好文章可以看:http://help.simplytestable.com/errors/html-validation/end-tag-for-element-x-which-is-not-open/end-tag-for-element-form-which-is-not-open/

      【讨论】:

        【解决方案3】:

        如果您尝试将表单放在多个 tds 中,那么您当前的方法将很难做到。

        很遗憾,您不能将表单放在表格行中,并且您当前的 HTML 无效,因为 td 元素在 form 元素之前关闭。

        您需要:

        1. 有整个表格的形式
        2. 将整个表单放在表格单元格中。
        3. 使用 html5 表单属性

        Form inside a table

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-03-14
          • 2021-09-09
          • 2021-09-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多