如何轻松验证JSP选项选择列表?

问题描述:

我需要验证这个简单的选择列表:如何轻松验证JSP选项选择列表?

<select name="<%= key %>"> 
    <option value="ETC" SELECTED>Select an option...</option> 
    <option value="ONE">Lorem ipsum</option> 
    <option value="TWO">dolor sit amet</option> 
</select> 

所以用户决不会与提交表单,借口重复,“选择一个选项...”选项中选择。原则上我被允许使用JavaScript,但学习如何在JSP中解决它也很有趣。

因为您无法控制客户端,所以永远无法真正满足'永不提交给定值'的条件。用户总是可以操纵HTML来提交他们想要的任何内容。

这是一个很好的方法,就是使用JavaScript进行客户端验证,并为用户提供快速反馈并捕获99%以上的情况,然后对提交的参数进行服务器端验证以捕获少数没有启用JS或者操作HTML来提交不期望的值。

请记住,客户端验证是可选的,对于那些“常见错误”输入验证很有用,但服务器端验证对于所有输入都是强制性的,无论是否进行了任何客户端检查给定的输入。

现在,您通常不会在JSP中进行验证,因为它们仅可视化之前处理的任何内容。所以你在“jsps”中唯一的验证通常是Javascript。其余的(真正的验证)我第二皮特回答:你必须在那里使用任何技术在服务器上做。当它再次显示在JSP中时,验证已经很长时间了。正如我所说的“如今”:当JSP是一个闪亮的新概念时,更多的事情是在JSP的边界内完成的,有时甚至将表单发布到JSP。 当时如何验证更为不规范。

+0

奥拉夫,非常感谢评论! – 2008-09-25 20:53:35

JSP是MVC模式中的“视图”,因此只能用于向用户显示数据。任何应用程序逻辑,包括验证逻辑,都应该在服务器端完成。 如果这个JSP旨在成为一个大型应用程序的一部分,我会建议使用Spring MVC来设置你的应用程序,并编写一个验证器来验证输入。 但是,即使我们没有在这里谈论一些大型应用程序,验证仍应该在服务器端完成,就像我以前的其他人已经注意到的一样。

+0

非常感谢您的评论,我一定希望遵循您的建议并学习Spring,但事实是,我不是从头开始创建应用程序,而是在处理现有的专有生产应用程序。 – 2008-09-28 15:48:34