使用<Combox:combox>时因为多加了<input type="hidden">造成的错误

来源:互联网 发布:这次网络短训班的学员 编辑:程序博客网 时间:2024/06/08 05:44

    今天有一个需求:在新建延长审限时填入当前登录的用户,在点击修改时从数据库中查询出数据并显示。

    本来一个很简单的功能,只需要使用<c:if test="tjudDelay.id">是否为空,传递不同的参数就可以了。但是,使用时发现当点击修改的时候,申请人会出现多个的状况,有几条

数据就显示几个名字。查询原因,发现判断语句以及数据库中的数据均为出现问题,在lst界面中循环显示的数据也是正确的,找了很久也没有找到错误。

    这时,发现在list界面中出去显示申请人时需要的<Combox:combox>标签之外,使用了隐藏的input文本框。恍然大悟,在list界面中多一条这个语句,就说明在list方法中已经

获取到了所有数据的申请人id,存放在了这个字段中,并存在了缓存中。在list界面显示各条数据的时候,由于是循环,输出的信息没有任何异常。而当点击修改的时候发送请

求时,就会将所有的申请人id信息传递到修改的界面,就造成了申请人显示多个的错误。

    如果在信息过多时,在申请人id的字段无力存储如此多的数据时,控制台就会报申请人id的value过大的错误。这个问题值得注意,一些细节上的东西很可能导致错误,需要

我们更加细心。

0 0