Одно серьезное основание, о котором я могу думать, для обслуживания кода: у Вас есть единственная точка выхода. Если Вы хотите изменить формат результата..., просто намного более просто реализовать. Кроме того, для отладки можно просто засунуть точку останова там:)
Однако я когда-то должен был работать в библиотеке, где стандарты кодирования наложили 'один оператор возврата на функцию', и я нашел его довольно жестким. Я пишу много числового кода вычислений, и часто существуют 'особые случаи', таким образом, код закончил тем, что был довольно тверд следовать...
Лучшее, что вы можете сделать, - это полностью исключить атрибут действия. Если вы не укажете его, форма будет отправлена по адресу документа, то есть на той же странице.
Также можно оставить его пустым, и любой браузер, реализующий алгоритм отправки формы HTML , обработает его. как эквивалент адреса документа, что происходит в основном потому, что в настоящее время браузеры работают так:
8.
Пусть действие будет действием элемента отправителя.
9.
Если действием является пустая строка, пусть действием будет адрес документа .Примечание: этот шаг является преднамеренным нарушением RFC 3986, что потребует здесь обработки базового URL. Это нарушение мотивировано стремлением к совместимости с устаревшим контентом. [RFC3986]
Это определенно работает во всех текущих браузерах, но может не работать должным образом в некоторых старых браузерах ( " браузеры делают странные вещи с пустым атрибутом action =" " "), поэтому спецификация настоятельно не рекомендует авторам оставлять его пустым :
Атрибуты содержимого
action
иformaction
, если они указаны, должен иметь значение, которое является действительным непустым URL-адресом, потенциально окруженным пробелами .
Обычно я использую action = "", который является допустимым XHTML и сохраняет данные GET в URL-адресе.
Я думаю, что лучше явно указывать, где отправляется форма. Если вы хотите быть в полной безопасности, введите тот же URL-адрес, что и форма, в атрибуте действия, если вы хотите, чтобы она отправлялась сама себе. Хотя основные браузеры оценивают ""
для одной и той же страницы, вы не можете гарантировать, что это будут делать неосновные браузеры.
И, конечно, весь URL, включая данные GET, такие как Джаддлинг, указывает.
Я часто делал это, когда работал с классическим ASP. Обычно я использовал его, когда требовалась какая-то проверка на стороне сервера для ввода (до дней AJAX). Главный недостаток, который я вижу, заключается в том, что он не отделяет логику программирования от представления на уровне файлов.