【问题标题】:Returning form variables in same JSP as form in Spring MVC在与 Spring MVC 中的表单相同的 JSP 中返回表单变量
【发布时间】:2016-10-30 02:10:49
【问题描述】:

我正在开发一个简单的网络应用程序,其中一部分是搜索。目前我只是试图从搜索中返回表单变量,并在用户点击提交后将它们显示在搜索页面上。

HTML:

<form:form modelAttribute="Search" action="performSearch" method="post" class="form-horizontal">
                        <fieldset>
                                  <div class="form-bottom">
                                    <div class="form-group">
                                        <select class="form-control" id="profession" name="profession">
                                            <option value="General Contractor">General Contractor</option>
                                            <option value="Plumber">Plumber</option>                                        
                                        </select>
                                    </div>
                                    <div class="form-group">

                                        <form:input path="zipcode" type="text" name="form-zip" placeholder="Zipcode..." class="form-control"></form:input>
                                    </div>                                  
                                    <div class="input-group">
                                         <span class="input-group-addon">$</span>

                                        <form:input path="cost" type="text" name="form-cost" placeholder="Max Cost per Hour..." class="form-control"></form:input>
                                    </div>  
                                    <br>

                                    <input type="submit" class="btn btn-default custom_btn" value="Search">

                                </div>
                            </fieldset>
                    </form:form>

搜索后显示的 HTML。

    <c:if test="${not empty test1}">
                test1       
    </c:if>             
    <c:if test="${not empty test2}">
                test2       
    </c:if> 
    <c:if test="${not empty test2}">
                test3       
    </c:if> 

search.jsp 的控制器。

 @RequestMapping(value="/performSearch")
    public ModelAndView performSearch(@ModelAttribute("search")Search search, ModelMap model) {


        model.addAttribute("test1",search.getCost());
        model.addAttribute("test2",search.getProfession());
        model.addAttribute("test2",search.getZipcode());


        return new ModelAndView("search");

    }

我认为此时我只是无法确定要返回的内容。我要返回 ModelAndView 吗?

编辑:

所以我忘了返回模型和模型对象。在这种情况下,

return new ModelAndView("search", "Search", new Search());

Search 是我为保存变量而创建的对象。

【问题讨论】:

    标签: spring jsp spring-mvc


    【解决方案1】:

    是的,模型和视图对象将采用构造函数中传递的视图名称。在这种情况下是一个 JSP。视图解析器将为我们将其连接在一起。模型内容将在 JSP 中可用。在你的情况下 search.jsp。模型和视图对象只是将模型数据与视图结合起来的一种便捷方式。您还可以通过不同的方式创建它们。你在正确的道路上。

    【讨论】:

    • 好的,看来我忘了返回模型和模型对象。我只是返回视图。
    【解决方案2】:

    我创建模型并以这种方式查看

    ModelAndView mav = new ModelAndView("someview");

    mav.addObject("someobject", myObject);

    返回mav;

    然后您可以使用 EL 从 someview.jsp 隐式访问 someobject

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-14
      • 2020-04-27
      • 1970-01-01
      • 2019-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多