ssm小项目改之遇到的数据回显的问题

时间:2022-02-23 08:10:41

首先在展示所有物品信息的内容的jsp也页面。

ssm小项目改之遇到的数据回显的问题

每个商品后面都有一个框可以选择修改这个商品的信息,这个修改转到

ssm小项目改之遇到的数据回显的问题

带着这个商品的id信息转到一个通过id查找货物详细信息的controller,这个controller接受一个id信息

ssm小项目改之遇到的数据回显的问题

这个虽然接受的是一个commoditShop对象,但是只接受了它的id属性
这个controller带着这个商品的详细信息传到了下一修改页面jsp

    ssm小项目改之遇到的数据回显的问题

我们设置了name属性不能超过20个字,当我们超过时,点击提交,会转发到便会触发校验。

ssm小项目改之遇到的数据回显的问题

这时会进入错误响应,在错误里我们又一次返回了这个商品修改页面,接下来就是困扰了一天的问题,如何数据回显。

首先我们当出发错误时回到修改的页面,数据要跟着传到页面,当我们controller的参数的把类的首字母小写必须和jsp页面里的属性相同。

这样才能完成参数回显,springmvc会自动把参数的内容再一次传到jsp页面


如果名称不相同

那么就是用注解@ModelAttribute("")

ssm小项目改之遇到的数据回显的问题

即使名称不同也可以存入,将@ModelAttribute("")接受jsp页面里的参数的名字就好。

当然还有最简单的方法就是

ssm小项目改之遇到的数据回显的问题

在转发到页面前,手动传入参数即可。

还遇到个问题。就是在设置修改页面时,id被传到修改页面,点击提交时,要把id的值也传进去但是不把它放入表单就不能传入,放入表单就意味着放入<input>标签,可是我不想让用户改id,那么把这个input隐藏起来就好如下:

<input name="id" type="hidden" value="${commoditShops.id}"  />
利用hidden属性把它隐藏起来就好