2006-11-04
struts实现下拉框多级联动
关键字: struts
以下方法是通过提交到服务器的方法,页面需要刷新
页面代码:
<script language="JavaScript">
<!--
function getCity(province)
{
form = province.form;
form.action = "/WorkLog/myInfo.do?method=changeProvince&provinceId="+province.value;
form.submit();
}
//-->
</script>
<html:html lang="true">
<head>
</head>
<body>
<jsp:useBean id="listProvice" scope="request" type="java.util.List"></jsp:useBean>
<jsp:useBean id="listCity" scope="request" type="java.util.List"></jsp:useBean>
<html:form action="/myInfo.do?method=edit">
所在地区:<html:select property="provinceId" onchange="getCity(this)">
<logic:iterate id="listprovice" name="listProvice">
<html:option value="${listprovice.provinceId}">
<bean:write name="listprovice" property="provinceName" />
</html:option>
</logic:iterate>
</html:select>省
<html:select property="cityId">
<logic:iterate id="listcity" name="listCity">
<html:option value="${listcity.cityId}">
<bean:write name="listcity" property="cityName" />
</html:option>
</logic:iterate>
</html:select>市
<html:submit value="提交"></html:submit><html:reset value="重填"></html:reset>
</html:form>
</body>
</html:html>
Action代码:
public class MyInfoAction extends DispatchAction
{
//这是从别的页面连接到修改页面的方法,在别的页面中加入连接:<html:link page="/myInfo.do?method=toInfo">个人信息</html:link>
public ActionForward toInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserForm userForm = (UserForm)request.getSession().getAttribute("userForm");
userForm.setStrUserBirsday(userForm.getUserBirsday().toLocaleString());
userForm.setDepartmentId(userForm.getDepartment().getDepartmentId());
userForm.setCityId(userForm.getCity().getCityId());
userForm.setIndustryId(userForm.getIndustry().getIndustryId());
userForm.setDutyId(userForm.getDuty().getDutyId());
userForm.setProvinceId(userForm.getProvince().getProvinceId());
userForm.setXueliId(userForm.getXueli().getXueliId());
List listIndustry = IndustryBE.queryAllIndustry();
List listXueli = XueliBE.queryAllXueli();
List listDuty = DutyBE.queryAllDuty();
List listProvice = ProviceBE.queryAllProvice();
List listCity = CityBE.queryAllCityByProvinceId(userForm.getProvince().getProvinceId());
request.setAttribute("listCity", listCity);
request.setAttribute("listProvice", listProvice);
request.setAttribute("listDuty", listDuty);
request.setAttribute("listXueli", listXueli);
request.setAttribute("listIndustry", listIndustry);
request.setAttribute("userForm", userForm);
return mapping.findForward("toInfo");
}
//这是处理修改页面当省选择改变时执行的代码,页面中连接在javascript中,见上面的页面代码
public ActionForward changeProvince(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String provinceId = request.getParameter("provinceId");
UserForm userForm = (UserForm)form;
List listIndustry = IndustryBE.queryAllIndustry();
List listXueli = XueliBE.queryAllXueli();
List listDuty = DutyBE.queryAllDuty();
List listProvice = ProviceBE.queryAllProvice();
List listCity = CityBE.queryAllCityByProvinceId(userForm.getProvinceId());
request.setAttribute("listCity", listCity);
request.setAttribute("listProvice", listProvice);
request.setAttribute("listDuty", listDuty);
request.setAttribute("listXueli", listXueli);
request.setAttribute("listIndustry", listIndustry);
request.setAttribute("userForm", userForm);
return mapping.findForward("changeProvince");
}
}
页面代码:
<script language="JavaScript">
<!--
function getCity(province)
{
form = province.form;
form.action = "/WorkLog/myInfo.do?method=changeProvince&provinceId="+province.value;
form.submit();
}
//-->
</script>
<html:html lang="true">
<head>
</head>
<body>
<jsp:useBean id="listProvice" scope="request" type="java.util.List"></jsp:useBean>
<jsp:useBean id="listCity" scope="request" type="java.util.List"></jsp:useBean>
<html:form action="/myInfo.do?method=edit">
所在地区:<html:select property="provinceId" onchange="getCity(this)">
<logic:iterate id="listprovice" name="listProvice">
<html:option value="${listprovice.provinceId}">
<bean:write name="listprovice" property="provinceName" />
</html:option>
</logic:iterate>
</html:select>省
<html:select property="cityId">
<logic:iterate id="listcity" name="listCity">
<html:option value="${listcity.cityId}">
<bean:write name="listcity" property="cityName" />
</html:option>
</logic:iterate>
</html:select>市
<html:submit value="提交"></html:submit><html:reset value="重填"></html:reset>
</html:form>
</body>
</html:html>
Action代码:
public class MyInfoAction extends DispatchAction
{
//这是从别的页面连接到修改页面的方法,在别的页面中加入连接:<html:link page="/myInfo.do?method=toInfo">个人信息</html:link>
public ActionForward toInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserForm userForm = (UserForm)request.getSession().getAttribute("userForm");
userForm.setStrUserBirsday(userForm.getUserBirsday().toLocaleString());
userForm.setDepartmentId(userForm.getDepartment().getDepartmentId());
userForm.setCityId(userForm.getCity().getCityId());
userForm.setIndustryId(userForm.getIndustry().getIndustryId());
userForm.setDutyId(userForm.getDuty().getDutyId());
userForm.setProvinceId(userForm.getProvince().getProvinceId());
userForm.setXueliId(userForm.getXueli().getXueliId());
List listIndustry = IndustryBE.queryAllIndustry();
List listXueli = XueliBE.queryAllXueli();
List listDuty = DutyBE.queryAllDuty();
List listProvice = ProviceBE.queryAllProvice();
List listCity = CityBE.queryAllCityByProvinceId(userForm.getProvince().getProvinceId());
request.setAttribute("listCity", listCity);
request.setAttribute("listProvice", listProvice);
request.setAttribute("listDuty", listDuty);
request.setAttribute("listXueli", listXueli);
request.setAttribute("listIndustry", listIndustry);
request.setAttribute("userForm", userForm);
return mapping.findForward("toInfo");
}
//这是处理修改页面当省选择改变时执行的代码,页面中连接在javascript中,见上面的页面代码
public ActionForward changeProvince(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String provinceId = request.getParameter("provinceId");
UserForm userForm = (UserForm)form;
List listIndustry = IndustryBE.queryAllIndustry();
List listXueli = XueliBE.queryAllXueli();
List listDuty = DutyBE.queryAllDuty();
List listProvice = ProviceBE.queryAllProvice();
List listCity = CityBE.queryAllCityByProvinceId(userForm.getProvinceId());
request.setAttribute("listCity", listCity);
request.setAttribute("listProvice", listProvice);
request.setAttribute("listDuty", listDuty);
request.setAttribute("listXueli", listXueli);
request.setAttribute("listIndustry", listIndustry);
request.setAttribute("userForm", userForm);
return mapping.findForward("changeProvince");
}
}
发表评论
- 浏览: 30411 次
- 性别:

- 来自: 在深圳的陕西仔

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
FLEX和spring、hibernate ...
好东西,学习了,最近在研究这些
-- by 弃天笑 -
Flex使用RemotingObject和 ...
代码能不能发全点啊 就这一点点
-- by lingwen20 -
flex的在线图片处理程序发 ...
能不能把代码共享一下? 急盼,谢谢了 lingwen21@163.com
-- by lingwen20 -
FLEX和spring、hibernate ...
帅哥,能给个flex + hibernate + spring的例子下载不? 先 ...
-- by AllenWalker -
flex的在线图片处理程序发 ...
喜欢 snetcc@163.com
-- by qinjianto08






评论排行榜