Можно ли обернуть элементы формы HTML в несколько тегов формы? - PullRequest
4 голосов
/ 24 февраля 2012

Было бы неправильно помещать каждый элемент формы в теги <form> на странице HTML? Мне интересно, почему это было бы неправильно:

В основном мне нужно ввести две формы (form1 и form2), и есть некоторые элементы, связанные с первой, а другие со второй. Макет должен быть полностью основан на таблице, и поскольку элементы обеих форм вот что я написал по всей странице (согласно http://validator.w3.org/check, код действителен):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
 <html>
<head>
   <title>Title of the document</title>
 </head>

 <body>
<table border="1">
    <tr>
        <td>
            <form name="form1" method="POST" action="via.php">
            Enter the first form text here!:    <input type="text" name="first"/>
            </form>
        </td>
        <td rowspan="2">
            <form name="form2" method="POST" action="via.php">
                Enter the second form text here!:<input type="text" name="second"/>
            </form>

            <form name="form1" method="POST" action="via.php">
            Enter the first form text here!:<input type="text" name="first"/>
            </form>
        </td>
  </tr>
  <tr>
        <td>
        <form name="form1" method="POST" action="via.php">
            <input type="submit" name="form1submit" value="submit1"/>
        </form>
        <form name="form12" method="POST" action="via.php">
            <input type="submit" name="form2submit" value="submit2"/>
        </form>
        </td>


  </tr>
</table>

Ответы [ 2 ]

4 голосов
/ 24 февраля 2012

Вложенные формы не допускаются, в соответствии с спецификацией :

Flow content, but with no form element descendants.

С учетом этого ввода в w3валидатор :

<!DOCTYPE html><html><head><title>tit</title></head><body>
<form action="x">
    <form action="x">
        <input type="submit" value="x"> <!-- Submitting.. Which form...?-->
    </form>
</form>    
</body></html>

Валидатор w3 сообщает:

Saw a form start tag, but there was already an active form element. Nested forms are not allowed. Ignoring the tag.

2 голосов
/ 24 февраля 2012

Похоже, что вопрос «Может ли HTML-документ содержать несколько форм?». Правильный ответ: «Да, если они не вложены». Формы будут совершенно разными, каждая из которых имеет набор собственных полей. .

...