, чтобы загрузить файл, который отправляется пользователем как часть формы с помощью jquery, пожалуйста, следуйте приведенному ниже коду:
var formData = new FormData();
formData.append("userfile", fileInputElement.files[0]);
Затем отправьте объект данных формы на сервер.
Мы также можем добавить файл или Blob непосредственно к объекту FormData.
data.append("myfile", myBlob, "filename.txt");
Строго говоря, элемент <div>
является непустым / непустым элементом в HTML, т. е. он не предназначен для самостоятельного закрытия. Хотя <div />
является действительным XHTML - из-за того, что />
указывает на самозакрывающийся (или пустой) XML-элемент - он интерпретируется обычными парсерами HTML и некоторыми валидаторами в качестве закрытого открывающего тега и поэтому недействителен HTML 4.01 и HTML5 .1
Фактически, запуск вашего данного фрагмента HTML через валидатор W3C (как HTML5) приводит к этому сообщению об ошибке:
синтаксис закрытия (/>), используемый для не-void HTML-элемента. Игнорирование косой черты и обработка в качестве начального тега.
Следовательно, что вы видите.
Из спецификации HTML5 (в первой ссылке):
Непустой элемент должен иметь конечный тег, если подраздел для этого элемента в разделе элементов HTML этой ссылки не указывает, что его конечный тег можно опустить.
После этого в подразделе для
<div>
элемента указано:Элемент div должен иметь как начальный тег, так и конечный тег.
Это делает
<div>
в отличие от<p>
или<li>
, которые, как известно, не всегда требуют концевого тега.Если вы поместите
<p>
сразу после незакрытого<p>
, он неявно закрывает предыдущий<p>
. Аналогично идет<li>
. Это связано с тем, что вы не можете напрямую вставлять несколько абзацев или элементов списка вместе. Тем не менее,<div>
является гнездовым на любую глубину. Таким образом, тэг открытия<div>
не закрывает ранее нераскрытый тег<div>
.И именно поэтому вы видите, что видите.
1 На настоящих страницах XHTML (сериализованных как XML, служащих как
application/xhtml+xml
), первый элемент<div />
будет не развернуть, чтобы обернуть второй элемент<div>text</div>
. Вместо этого, как XHTML, он будет следовать правилам XML и содержать себя как пустой элемент, а не следовать правилам супа HTML-тегов и сам интерпретироваться как открывающий тег.
В этот момент тег нуждается в отдельном дополнении - возможно, это может быть добавлено.
Обратите внимание, что в правильном синтаксисе даже самозакрывающимся тегам требуется дополнительное пространство (<br />
, а не <br/>
)
<br/>
является полностью допустимым XHTML / XML. Пространство несущественно. Интересно, что вы видите только пространство в документах, связанных с XHTML, в то время как статьи о любом другом виде XML, похоже, его пропускают.
– BoltClock♦
28 March 2011 в 08:36