【发布时间】:2016-10-27 23:48:49
【问题描述】:
如何区分我的提交按钮在一个表单中的两个单独的操作,而一个将数据保存到数据库中(按原样),另一个将表单作为有效请求提交,>>但是HTML5 本机验证(我在 HTML 表单中使用“必需”属性)?
我的表单有 66 个字段,我不想在 在提交后在 PHP 中验证它们(因为它太麻烦和耗时),或者在提交之前在 JS 中验证它们(因为我在 JS 中不像在 PHP 中那样敏捷),所以我在 HTML5 中使用“required”和“type”属性,这是一种非常方便且用途广泛的验证方式(除了旧浏览器)。 但是,当使用保存按钮但不使用“发送以提交”按钮时,我找不到绕过“必需”属性的简单方法。你能帮忙提出一个解决方案吗?我想首选的方式是一些 JS/jQuery 方式,因为在点击按钮之前我无法确定将使用哪个按钮(这样我就可以将字段设为必填)。
示例代码:
<form>
A: <input type="text" name="A" required />
B: <input type="text" name="B" required />
C: <input type="text" name="C" />
<input type="submit" name="save" value="Save"> <!--do not require anything-->
<input type="submit" name="send" value="Send for submission"> <!-- require everything-->
</form>
当然,我的表单很大,因为它有 66 个字段,所以这里最好的解决方案可能是通用的和通用的。
【问题讨论】:
-
如果你不验证服务器端的数据你只是懒惰自找麻烦。客户端验证纯粹是为了增强用户体验,绝不能依赖。
-
我完全同意你的看法。随着时间的流逝,我只能背对着墙,需要在这里妥协......这不是最好的方法,但几乎不可行,尽快更新/升级。
标签: php jquery html forms validation