2015-04-25 2 views
1

У меня есть следующие строки в моем файле шаблона Джанго: -cart.html: -Как устранить следующую ошибку 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>, я получаю следующее сообщение об ошибке: Элемент формы не Закрыто. Пожалуйста, помогите мне исправить эту ошибку.

ответ

2

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>  

Я предполагаю, что последний решение - это тот, который вы ищете.

+1

спасибо большое @Dante –

1

Ну, попробуйте выполнить табуляцию первой строки так, чтобы она была выстроена с закрывающим тегом.

Тогда я бы играл с кодом для бит и опробовать вещи. Вот хорошая статья, чтобы посмотреть на: 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/

+1

спасибо большое. @Darcey Mckelvey –

1

Если вы пытаетесь поместить форму через несколько td, это будет сложно с вашим текущим подходом.

К сожалению, вы не можете иметь форму внутри строки таблицы, а текущий HTML-код недействителен, так как элемент td закрыт перед элементом form.

Вы либо должны:

  1. имеют всю таблицу в виде
  2. Иметь всю форму в ячейке таблицы.
  3. Используйте атрибут формы html5

См Form inside a table

+1

спасибо большое @Nick Bartlett –

Смежные вопросы