Отправка формы с установленным атрибутом действия, и в то же время существует код JavaScript, который обрабатывает отправку - PullRequest
0 голосов
/ 21 ноября 2010

что происходит, когда вы отправляете форму с установленным атрибутом действия и в то же время существует код JavaScript, который обрабатывает отправку?

Есть ли способ сохранить оба кода (атрибут действия и код JavaScript) для случая, когда у пользователя не установлен JavaScript?

Привет

1007 * Javi *

Ответы [ 2 ]

2 голосов
/ 21 ноября 2010

что происходит, когда вы отправляете форму с установленным атрибутом действия и в то же время существует код JavaScript, который обрабатывает отправку?

Это зависит от того, что вы подразумеваете подmsgstr "код javascript, который обрабатывает отправку".Предполагая, что вы имеете в виду «Вы вызываете метод submit() объекта формы», браузер отправит форму как обычно для указанного URI.

Любой способ сохранить оба кода (атрибут действия иjavascript code) для случая, когда у пользователя не установлен javascript?

Использовать прогрессивное улучшение .

Напишите форму, которая работает без JavaScript, затем оберните ее обработчиками событий JS, которые выполняют альтернативные функции (и отмените отправку по умолчанию, если вы этого не хотите).

1 голос
/ 21 ноября 2010

Когда вы отключаете JavaScript, у вас мало контроля.Однако вы можете использовать <noscript></noscript> теги , чтобы подразумевать, что JavaScript должен быть включен для функциональности страницы.Обратите внимание, что вы также можете изменить атрибут action с помощью JavaScript следующим образом:

yourformName.action = 'new action here';

Но, конечно, это не сработает, если JavaScript отключен.

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

...