【发布时间】:2009-01-29 05:37:40
【问题描述】:
请解决我对 Struts2 中验证的以下困惑 -
1) 我们可以通过 JavaScript 进行客户端和服务器端验证吗? 2) 我们可以通过 AJAX 进行客户端和服务器端验证吗?
如果可能的话,哪一种对客户端验证有利,哪一种对服务器端有利?
【问题讨论】:
标签: java struts2 validation
请解决我对 Struts2 中验证的以下困惑 -
1) 我们可以通过 JavaScript 进行客户端和服务器端验证吗? 2) 我们可以通过 AJAX 进行客户端和服务器端验证吗?
如果可能的话,哪一种对客户端验证有利,哪一种对服务器端有利?
【问题讨论】:
标签: java struts2 validation
客户端验证可以通过 Javascript 完成。服务器端验证是通过验证框架完成的。您可以通过 AJAX 进行验证,但需要做更多的工作。
我们发现客户端验证最好留给简单的情况,例如缺少必填字段和非法字符。任何比这更复杂的东西都需要 AJAX 和/或服务器端。此外,我们发现有关 Struts 2 客户端验证的文档不太有用,因此您可能需要考虑在您选择的 Javascript 框架(Dojo、YUI、Scriptaculous JQuery 等)中进行验证。
【讨论】:
是的,您可以同时使用 javascript 和 ajax,而且您经常会同时使用这两种方法 - 甚至用于验证同一条数据。 (如果它通过了客户端验证,那么您之后会进行 ajax 验证。)
当您不希望需要验证的数据出现在每个人都可以看到的 javascript 中时,显然可以使用 ajax。客户端验证通常仅限于更简单的事情。
所有 ajax 的缺点是它通常会大大增加页面的复杂性。
【讨论】:
你知道完整的休眠插件吗?
这个插件有一个很棒的验证功能...
http://cwiki.apache.org/S2PLUGINS/full-hibernate-plugin.html
更多信息请访问 vaannila.com
【讨论】:
最好有 javascript 和服务器端验证。原因是如果用户在他们的浏览器上禁用了 javascript,那么您的客户端验证将不起作用,并且如果条目未经过验证,您的代码将引发异常。
【讨论】: