1.页面radio的加载:
// (1)引入所需的类
<%@ page import="java.util.ArrayList" %>
<%@ page import="org.apache.struts.util.LabelValueBean" %>
<%@ page import="org.apache.struts.util.LabelValueBean" %>
// (2)设置radio的值及对应名称
<%
ArrayList empRoleList= new ArrayList();
empRoleList.add(new LabelValueBean("开发部普通员工", "10000001"));
empRoleList.add(new LabelValueBean("开发部管理员", "10000000"));
request.setAttribute ("empRoleList",empRoleList);
%>
ArrayList empRoleList= new ArrayList();
empRoleList.add(new LabelValueBean("开发部普通员工", "10000001"));
empRoleList.add(new LabelValueBean("开发部管理员", "10000000"));
request.setAttribute ("empRoleList",empRoleList);
%>
// (3)jsp页面中的使用
<logic:iterate id="empRoles" name="empRoleList">
<html:radio idName="empRoles" property="empRoleID" value="value" />
<bean:write name="empRoles" property="label"/>
</logic:iterate>
<html:radio idName="empRoles" property="empRoleID" value="value" />
<bean:write name="empRoles" property="label"/>
</logic:iterate>
通过上述三个步骤就可以显示radio,但是还没有设置默认值,设置默认值分两种情况:
一种是radio的默认值是静态的情况下:
只需要在JSP页面的尾部(<body>标签和<html:html>标签之间即可)加入下面的JS脚本,
<script type="text/javascript" language="Javascript">
empInsertForm.empRoleID[0].checked=true;
</script>
empInsertForm.empRoleID[0].checked=true;
</script>
这样第一个radio就被选中了,如果选让其他radio选中,只要更改数组值就可以了。
另一种是radio的默认值是动态的情况下:
这种情况是该页面的radio值是从别的页面传过来的,不一定是显示哪一个,方法如下:
首先在页面上部取得该radio的值:
<%
String empRole=empDto.getEmpRoleID(); //empDto是个已经有值的bean类。
request.setAttribute("empDto",empDto);
%>
然后在页面尾部<body>与<html:html>之间即可,加上
<script>setChecked(<%=empRole%>)</script> //调用一个JS
相应的JS为:
function setChecked(empRole){
if(empRole=="10000000"){ // 当取出的值是10000000的情况下
empInsertForm.empRoleID[1].checked=true; // 设置第一个radio被选中
} else{ // 否则,
empInsertForm.empRoleID[0].checked=true; // 另一个radio被选中
}
}
//(多个radio也可以依照上面的方法进行判断)
资源引用:
http://hi.baidu.com/ygfenghuang/blog/item/271794b14ec9db54082302c7.html