我只想用请求参数发送我的下拉列表的值。在我的情况下
Kidscalcula_web/start.htm?klasid=myValueHere
我知道这样做的一种方法,但是为此使用它听起来很不合理。如果我觉得无聊,我可能会写一些 jQuery 来做一个帖子并发送参数。现在手动创建我的请求字符串听起来确实是一个非常糟糕的主意,因为 Spring 会处理这个问题。那么如何制作一个简单的表单,将我的下拉值发送到我的 Controller 呢?
只是我在任何地方都找不到如此微不足道的东西,你们中的一个人可能会很快帮助我。我想 Controller 会像这样微不足道:
@RequestMapping(value = "post")
public String postIndex(@RequestParam("klasid") String klasid, HttpServletResponse response,
HttpServletRequest request) {
}
但是我真的找不到任何关于如何制作 JSP 来向我发送该值的示例。
<form>
是否有可能?标签库?
最佳答案
<form>
taglib 通常与支持表单的命令对象一起使用,而不是使用单独的 @RequestParam
绑定(bind)到 Controller 。论据。这就是为什么您不会看到该组合的任何文档示例一起使用的原因。
例如,而不是 @RequestParam("klasid")
,您将拥有一个命令类,其中包含一个名为 klasid
的字段。 ,而 Spring 会将所有内容绑定(bind)在一起:
@RequestMapping(value = "post")
public String postIndex(@ModelAttribute MyCommandClass command) { /../ }
当您考虑到表单通常具有多个参数并且使用
@RequestParam
声明它们会变得很麻烦时,这是有道理的。 .话虽如此,您仍然可以这样做 - 任何表单控件都会生成
@RequestParam
的请求参数可以绑定(bind)到,但是如果选择背离Spring MVC的form-backing命令模式,那就比较尴尬了。
关于spring - 在 Spring MVC 3 中传递请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4139538/