JavaScript-是否可以在提交到服务器端之前检查表单中是否填写了所有字段?
我有一个复杂的表单,其中包含一些使用JS/jQuery动态生成的字段 这种动态生成的问题是在服务器端验证此字段的复杂性。我不知道我是否应该存储JS生成的表单和值,并尝试在服务器端验证,或者另一方面使用另一种方法,如在客户端验证所有(我认为更容易)JavaScript-是否可以在提交到服务器端之前检查表单中是否填写了所有字段?,javascript,validation,Javascript,Validation,我有一个复杂的表单,其中包含一些使用JS/jQuery动态生成的字段 这种动态生成的问题是在服务器端验证此字段的复杂性。我不知道我是否应该存储JS生成的表单和值,并尝试在服务器端验证,或者另一方面使用另一种方法,如在客户端验证所有(我认为更容易) 我的问题1是:是否可以使用JS进行所有验证?有一些JS验证框架可以帮助我完成这项任务吗?我已经找到了LiveValidation(www.LiveValidation.com),这就是我需要的吗 问题2:使用这种方法我会遇到什么问题(validata
- 我的问题1是:是否可以使用JS进行所有验证?有一些JS验证框架可以帮助我完成这项任务吗?我已经找到了LiveValidation(www.LiveValidation.com),这就是我需要的吗
- 问题2:使用这种方法我会遇到什么问题(validata全部在客户端)
非常感谢,是的,除了可以绕过所有客户端验证的黑端之外,在客户端执行所有验证都是非常可能的。执行验证的一个好且简单的插件是客户端验证仅用于用户体验目的(速度、易用性、用户友好性、即时响应等),而不用于真正的验证。JS验证很容易绕过。甚至可以不使用表单就向服务器提交数据,从而完全跳过客户端 出于安全目的,服务器应该进行验证。您的验证逻辑应该适应表单的动态特性
据我所知,动态表单通常使用阵列表单。这样,就很容易在服务器端查看动态表单,特别是那些具有重复字段组的表单。安德烈,我们一直都在这样做。Javascript验证是一个关键点,必须在提交之前执行,主要原因是
- 使站点/页面用户友好
- 由于Firebug、Chrome。。。还有一堆命令行工具
- 确保用户填写了所有必填字段,并指向缺少的字段(焦点)
- 检查输入的数据类型,并警告用户
- 确保字段的一致性(卡号、生日、fieldX和fieldY…)
- JS验证不能确保发送到服务器的数据是干净的/可靠的/一致的(因为JS验证很容易被绕过)
- 服务器必须对所有字段执行相同或更强的验证,并且永远不信任用户输入(SQL注入风险等)