2015-12-31 2 views
3

Иногда я вижу форму, обернутую в виде тегаформы HTML тег иногда отсутствует в формах

<form action="demo_form.asp" method="get"> 
    First name: <input type="text" name="fname"><br> 
    Last name: <input type="text" name="lname"><br> 
    <input type="submit" value="Submit"> 
</form> 

А иногда нет тега формы, но только ДИВ

<div class="view"> 
    <input class="toggle" type="checkbox"> 
    <button class="destroy"></button> 
</div> 
<input class="edit" value="<%= title %>"> 

Как получилось, что тег формы присутствует, а другие - не для форм?

ответ

2

Перед отправкой информации через AJAX, HTML-формы были стандартом при отправке информации на сервер с веб-страницы. Они включают назначение и метод в атрибутах формы. Совсем недавно это можно обрабатывать без назначения этих атрибутов в форме и отправляться через Javascript; обычно используя AJAX. Это означает, что элемент формы не нужен, но есть хорошая идея включить туда, где это возможно, синтаксически корректный HTML.

+0

спасибо, что имеет смысл – User314159

0

Типы входных данных форм не всегда используются для отправки значений, их можно использовать в качестве контроллеров, например, для целей разности дат, диапазонов или ползунков для управления альфа-каналом или поворота и изображения, создания калькуляторов, отображения или скрытия материалов на странице , много других, чем просто представления на другие страницы

Проверить это code for a calculator на одном из постов целей пару часов назад, много кнопок, но ничего не

представления
<INPUT TYPE="button" ID="button-cos" VALUE="cos"> 

Другой пример использования button и input type="text"online image editor tutorial

0

Тег <form> не используется специально, когда разработчики решают не отправлять данные обычным способом. Тег <form> имеет основную цель обертывания всех входов, которые будут отправлены на следующую страницу, указанную в атрибуте action тега <form>, и эти данные отправляются с использованием метода POST или GET, указанного атрибутом method.

<form action="nextpage.php" method="post"> 

Когда входы не обернут <form> тега это означает, что данные не представлены на другую страницу или она представила по-другому через JavaScript.

JavaScript может считывать значения всех входов и передавать эти данные на следующую страницу, имитируя форму или просто отправляя ее на сервер, не меняя страницу, когда страница никогда не изменяется, но данные отправляются на сервер, когда мы говорим, что он был отправлен с использованием AJAX.

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