|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2007-02-25 关键字: Struts html select 默认值
最近在写一个系统中,有一个有下拉列表的修改资料功能,对Struts的html:select进行了运用。 其中怎么样使进入修改页面之后,该下拉列表里的数据是该需要修改的数据列的数据字段,也就是使html:select中显示的值默认对应数据库中的值。测试修改了一个下午,总得不出结果,最后还是看了Struts的examples才算是弄出来了,如:
总结:在使用Struts进行修改功能时,要在修改页面上取的数据库先前的值。只要在form中reset里取得数据库里的值,然后在前台页面里html:form里对应的项设置其property为form中对应的属性值就好了,而不需要再设置value属性了。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2006-12-06
真正的struts的做法
XXAction{
execute()
{
request.setAttribute("ids", getNameID());
}
private List getNameID()
{
//load from db
...
//make a LabelValueBean List
ArrayList ls = new ArrayList();
for()
{
ls.add(new LabelValueBean(name,id);
}
}
}
jsp <html:select property="id"> <html:optionsCollection name="ids" /> </html:select> |
|
| 返回顶楼 | |
|
最后更新时间:2006-12-06
LabelValueBean是struts中的一个类,用来配合html:optionsCollection做显示,这里只展示了一种常用方案,
更多细节请看html:optionsCollection相关文档 |
|
| 返回顶楼 | |
|
最后更新时间:2006-12-06
还加一点,你可能会碰到要多加一个的情况,那么可以这样。
<html:select property="id">
<html:option value="0">无</html:option>
<html:optionsCollection name="ids" />
</html:select>
即html:option, html:options, html:optionsCollection这几个标标签可以组合。 看看这样写的结果
<html:select property="id">
<html:option value="0">无</html:option>
<html:optionsCollection name="ids" />
<html:option value="0">无</html:option>
<html:optionsCollection name="ids" />
</html:select>
|
|
| 返回顶楼 | |
|
最后更新时间:2006-12-06
optionsCollection 中的类型也不一定必须是LabelValueBean,
在<html:optionsCollection/>标签中可以指定label和name分别是ListItem的属性名字 |
|
| 返回顶楼 | |
|
最后更新时间:2006-12-07
真的不错
|
|
| 返回顶楼 | |
|
最后更新时间:2006-12-23
<c:out value="row.name"/> ->${row.name}
|
|
| 返回顶楼 | |
|
最后更新时间:2007-09-18
如果我要其中一项作为默认值来显示呢
|
|
| 返回顶楼 | |
|
最后更新时间:2007-09-18
如果Select的选项固定,可以直接用Selected标签实现默认值(JAVA代码1) 代码
如果是动态的(JAVA代码2),可以在相对应Action的From中设置默认值(JAVA代码3) java 代码2
java 代码3
js 代码
|
|
| 返回顶楼 | |
|
最后更新时间:2007-09-18
还有,比如楼主的代码 代码
可以在 代码
之间进行判断,像Struts1.X中的 代码
|
|
| 返回顶楼 | |







![ecsun的博客: [海鹏Blog]--{FaceYe开源} 用户头像](http://www.javaeye.com/upload/logo/user/36668/bcfaff38-8200-4288-88e6-f588c3138e36.gif?1196653519)

