struts2 标签 combobox <s:combobox label="按公文类型查询" list="{'草稿' , '待审' , '已审'}" name="type"/> 2个问题:1. 我如何能让默认显示“待审”?就是一进界面看到的是待审,但注意顺序不能变,展开下拉列表待审依旧是第二位2. 我如何能让label"按公文类型查询"和下拉列表显示在同一排?现在是自动生成了一个输入框,我不想要那个输入框 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 另外我还想问句,这个struts标签的API在哪个包里啊?我下载了struts的api,但没看到标签的api啊 我下载了struts的api,但没看到标签的api啊 <s:combobox label="按公文类型查询" list="#{'1':'草稿','2':'待审','3':'已审'}" name="type"/> Java code<s:combobox label="不用写什么" list="{'草稿' , '待审' , '已审'}" name="type" headerKey="-1" headerValue="按公文类型查询" /> 这样能解决你一个问题,默认选中可以再java后台设置好type='待审'那么访问这个页面时默认就选中了。。 参考下struts2文档里面的JSP:<-- Example One --><s:bean name="struts.util.Counter" var="year"> <s:param name="first" value="text('firstBirthYear')"/> <s:param name="last" value="2000"/> <s:combobox label="Birth year" size="6" maxlength="4" name="birthYear" list="#year"/></s:bean><-- Example Two --><s:combobox label="My Favourite Fruit" name="myFavouriteFruit" list="{'apple','banana','grape','pear'}" headerKey="-1" headerValue="--- Please Select ---" emptyOption="true" value="banana" /><-- Example Two --><s:combobox label="My Favourite Color" name="myFavouriteColor" list="#{'red':'red','green':'green','blue':'blue'}" headerKey="-1" headerValue="--- Please Select ---" emptyOption="true" value="green" />Velocity:#tag( ComboBox "label=Birth year" "size=6" "maxlength=4" "name=birthYear" "list=#year" ) 确实,这样可以解决默认选中的问题。另一个问题的解决方法是把combobox换成select: <s:select label="按公文类型查询" list="{'草稿' , '待审' , '已审'}" name="type"/> api在下Doc里有啊,网页的啊:http://struts.apache.org/2.1.8.1/docs/generic-tag-reference.html这页介绍了一些 怎么在后台设置好type='待审'啊?能说具体点么我是这样写的package com.cec.document;import com.opensymphony.xwork2.ActionContext;public class DOCLoginAction { @SuppressWarnings("unchecked") public String execute() throws Exception{ ActionContext.getContext().getSession().put("type","待审"); return "success"; }}通过这个Action就跳到我要显示的页面,这个页面中我现在换成select了<s:select label="" list="{'草稿' , '待审' , '已审'}" headerKey="-1" headerValue="按公文类型查询" name="type"/> 我感觉都是按你来的啊,但结果默认是显示“按公文类型查询”,不是“待审” Java:public class ComboAction extends ActionSupport { private String type; public String execute() throws Exception { this.type = "待审"; return SUCCESS; } public void setType(String type) { this.type = type; } public String getType() { return type; } }JSP:<s:select label="按公文类型查询" list="{'草稿' , '待审' , '已审'}" name="type"/> 感谢楼上,你是对的,不过我最后想问下,我改了你一句this.type = "待审";为ActionContext.getContext().getSession().put("type","待审");就不行了,为什么呢?我觉得应该也可以啊 <s:combobox label="不用写什么" list="{'草稿' , '待审' , '已审'}" name="type" headerKey="-1" headerValue="按公文类型查询" /> 这个是解决你以下问题的。2. 我如何能让label"按公文类型查询"和下拉列表显示在同一排?现在是自动生成了一个输入框,我不想要那个输入框默认那个问题就是在后台设置啊。ActionContext.getContext().getSession().put("type","待审"); 是放到session对象里面的,不是在action或者form(如果有的话)对象。页面显示的是action或者form对象对应的属性值,所以你设置了也没用。如果页面你写个<%=request.getSession.getAttribute("type")%>就能显示你设置在session里面的内容了,我是看了有得分的贴再回来看看有什么要说明的,不好意思回晚了。 模块整合问题 求教高手啊:JSF页面URL传递参数的问题(急哪) javabean——Unable to load class for JSP一个问烂了的问题 始终没有找到解决方法 jsp问题,,谁懂底层???????????? 网站外包项目 为什么在UTF-8格式下的显示的中文要转换成 Unicode转义序列? 小弟遇到一个问题,来此集思广益!在线等 不是高手别进来,jsp+html+servlet问题 关于提交表单的问题 关于jbuilder中的jsp为灰色的问题以及Tomcat的 jsp..html..调用JS不同? 对于session时间该如何管理
list="#{'1':'草稿','2':'待审','3':'已审'}"
name="type"/>
<s:combobox label="不用写什么"
list="{'草稿' , '待审' , '已审'}"
name="type"
headerKey="-1"
headerValue="按公文类型查询"
/>
这样能解决你一个问题,默认选中可以再java后台设置好type='待审'那么访问这个页面时默认就选中了。。
<-- Example One -->
<s:bean name="struts.util.Counter" var="year">
<s:param name="first" value="text('firstBirthYear')"/>
<s:param name="last" value="2000"/> <s:combobox label="Birth year" size="6" maxlength="4" name="birthYear" list="#year"/>
</s:bean><-- Example Two -->
<s:combobox
label="My Favourite Fruit"
name="myFavouriteFruit"
list="{'apple','banana','grape','pear'}"
headerKey="-1"
headerValue="--- Please Select ---"
emptyOption="true"
value="banana" /><-- Example Two -->
<s:combobox
label="My Favourite Color"
name="myFavouriteColor"
list="#{'red':'red','green':'green','blue':'blue'}"
headerKey="-1"
headerValue="--- Please Select ---"
emptyOption="true"
value="green" />Velocity:
#tag( ComboBox "label=Birth year" "size=6" "maxlength=4" "name=birthYear" "list=#year" )
确实,这样可以解决默认选中的问题。另一个问题的解决方法是把combobox换成select: <s:select label="按公文类型查询"
list="{'草稿' , '待审' , '已审'}"
name="type"/>
http://struts.apache.org/2.1.8.1/docs/generic-tag-reference.html
这页介绍了一些
我是这样写的package com.cec.document;import com.opensymphony.xwork2.ActionContext;public class DOCLoginAction {
@SuppressWarnings("unchecked")
public String execute() throws Exception{
ActionContext.getContext().getSession().put("type","待审");
return "success";
}
}通过这个Action就跳到我要显示的页面,这个页面中我现在换成select了<s:select label=""
list="{'草稿' , '待审' , '已审'}"
headerKey="-1"
headerValue="按公文类型查询"
name="type"/> 我感觉都是按你来的啊,但结果默认是显示“按公文类型查询”,不是“待审”
this.type = "待审";
return SUCCESS;
} public void setType(String type) {
this.type = type;
}
public String getType() {
return type;
}
}JSP:<s:select label="按公文类型查询"
list="{'草稿' , '待审' , '已审'}"
name="type"/>
ActionContext.getContext().getSession().put("type","待审");
就不行了,为什么呢?我觉得应该也可以啊
list="{'草稿' , '待审' , '已审'}"
name="type"
headerKey="-1"
headerValue="按公文类型查询"
/>
这个是解决你以下问题的。
2. 我如何能让label"按公文类型查询"和下拉列表显示在同一排?现在是自动生成了一个输入框,我不想要那个输入框
默认那个问题就是在后台设置啊。ActionContext.getContext().getSession().put("type","待审"); 是放到session对象里面的,不是在action或者form(如果有的话)对象。
页面显示的是action或者form对象对应的属性值,所以你设置了也没用。如果页面你写个<%=request.getSession.getAttribute("type")%>就能显示你设置在session里面的内容了,我是看了有得分的贴再回来看看有什么要说明的,不好意思回晚了。