不使用Javascript提交表单

rya*_*dlf 7 html javascript forms

我有一个依赖于javascript来执行所有客户端表单验证的表单.如果所有字段都正确填写,则表单通过javascript提交,而不是使用标准的"提交"按钮:

<button name="button" type=button onclick="validateReqFields('mForm', 'username, password, compPassword, firstName, lastName');">Register</button>

document[formName].submit();
Run Code Online (Sandbox Code Playgroud)

如果客户端禁用了javascript,则所有表单验证都在服务器端完成(无论如何,它实际上都会执行,但这并不重要).问题在于使用具有按钮类型的按钮而不是提交.它适用于javascript,但如果javascript不可用,我该如何解决这个问题呢?如果我使用提交按钮和javascript,那么它会在每次按下按钮时提交表单,但无法正常工作.

小智 5

使用提交按钮而不是“按钮”按钮,然后validateReqFields在表单无效时让函数返回 false。

然后,如果您愿意,可以从 validateReqFields 中取出表单提交。

这边走

  • 如果表单有效,则单击按钮将出现气泡并且表单将提交
  • 如果表单无效,则 javascript 将取消按钮单击
  • 如果 javascript 被禁用,那么它将作为后备提交到服务器