HTML-метод отправки сообщения отправить ошибку [дубликат]

function reverseString(string) {
    var reversedString = "";
    var stringLength = string.length - 1;
    for (var i = stringLength; i >= 0; i--) {
        reversedString += string[i];
    }
    return reversedString;
}
11
задан Andy E 23 December 2010 в 15:31
поделиться

6 ответов

Нет, вложенные формы запрещены.


Это выражается в DTD HTML 4.01 как:

<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form -->

- http: // www. w3.org/TR/html4/interact/forms.html#h-17.3

Это означает . FORM имеет обязательный начальный тег, обязательный конечный тег и может содержать что-либо в% блок или SCRIPT, за исключением других FORM.


XML DTD не так выразительны, как SGML DTD, поэтому в XHTML это правило указывается только в человекообразном тексте спецификации:

форма не должна содержать других элементов формы.

- http://www.w3.org/TR/xhtml1/#prohibitions


HTML 5 не является SGML-приложением и не имеет официального машиносчитываемого описания языка. Он также выражает это правило в тексте:

Модель контента:

Содержимое потока, но без потомков элемента формы.

- http://www.w3.org/TR/html5/forms.html#the-form-element

18
ответ дан Quentin 20 August 2018 в 07:11
поделиться

Вложенные формы не допускаются в спецификации (я не уверен, что было бы при попытке, я не пробовал).

В есть интересное обсуждение темы ] предыдущий вопрос , однако.

1
ответ дан Community 20 August 2018 в 07:11
поделиться

Непосредственно в Формах не допускаются. Все ваши javascript не будут работать, и предполагаемого поведения там не будет.

Однако вы можете попробовать следующее:

<form name ="1st form">
<...>
<div> <form id="dummy"></form></div>
<...>
<form name = "2nd form">
</form>
<...>
</form>

Вам нужно будет создать фиктивную форму между двумя формами, которые вы намеревались использовать. 1 примечание о предостережении, 1-я форма и фиктивная форма должны иметь некоторые метки между ними. иначе это не сработает.

-1
ответ дан Kiasi 20 August 2018 в 07:11
поделиться

Нет, используйте <fieldset>, если хотите разбить свои формы. Некоторые браузеры могут его проанализировать (не проверял), но в соответствии со стандартом w3 не разрешается использовать формы в других формах.

0
ответ дан Mark Baijens 20 August 2018 в 07:11
поделиться

Прекрасно работает с XHTML 1.0 Strict.

Я даже проверил проверку, вставив ниже http://validator.w3.org/check .

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Markup Test</title>
    <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
  </head>
  <body>
    <h1>Markup Test</h1>
    <p>
      This doc contains a form with a nested form and validates at
      <a title="Validate using W3C Markup Validation Service" href="http://validator.w3.org/check?uri=referer">
        http://validator.w3.org/
      </a>
    </p>
    <form action="#">
      <div>
        <form action="#">
        </form>
      </div>
    </form>
  </body>
</html>

HOWEVER Quentin ниже верно: я протестировал и закрывающие теги вложенных форм и игнорируются. Элементы ввода формы, которые появляются до, внутри и после тегов дочерней формы, рассматриваются как члены родительской формы, включая кнопки отправки. Ссылки JavaScript на this.form из дочерней формы ссылаются на родительскую форму. Если вы даете дочернему элементу идентификатор и извлекаете его через getElementById, вы получаете элемент, но .submit() ничего не делает. Его в основном одна форма (родительская) с метками мусора в ней.

0
ответ дан meagar 20 August 2018 в 07:11
поделиться
  • 1
    Это valid , но не разрешено . XML DTD не так выразительны, как SGML DTD, поэтому вы не можете выразить «No inested generated & quot; таким образом, что валидатор может понять. См. Элемент Запреты : форма не должна содержать другие элементы формы – Quentin 16 December 2011 в 14:00

Вы не можете их вложить, но вы можете группировать элементы ... для этого есть специальный механизм, элемент <fieldset> , используемый для группировки элементов управления / меток ... и в HTML5 связывать его с конкретными формами, отключать содержимое и т. д.

2
ответ дан Nick Craver 20 August 2018 в 07:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: