业务场景:根据搜索条件批量下载。页面提交数据到Action里面。Action有两部分操作,第一是查询你要下载的数量。第二是下载。当查询到数量的时候,客户端要弹出提示框,提示你要下载的数量,问你是否下载。
注意:整个场景都是FORM提交表单的
页面:
<%@ page language="java" pageEncoding="GB18030"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<html>
<head>
<title>JSP for LoginForm form</title>
<script>
window.onload = function(){
var flag ="${flag}";
if(flag){
var f = window.confirm("你搜索了"+flag+"份简历,是否确定下载?");
if(f){
document.getElementById("falg").value=f;
//loginForm为StrutsConfig.xml里面配置的action对应的form名称
document.loginForm.submit();
}
}
}
</script>
</head>
<body>
<html:form action="/login" >
<html:hidden property="falg" value="false"/>
name : <html:text property="name"/><html:errors property="name"/><br/>
<html:submit/><html:cancel/>
</html:form>
</body>
</html>
Action code:
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginForm loginForm = (LoginForm) form;// TODO Auto-generated method stub
String name = loginForm.getName();
String flag = loginForm.getFalg();
//判断状态位,是FALSE状态就表示还没有发出提示。页面有个名字为flag的隐藏域,默认值为FALSE;
if(flag=="false"||"false".equals(flag)){
System.err.println("name="+name);
System.err.println("flag="+flag);
request.setAttribute("flag","666");//改变状态位的值,并保存数量。
return mapping.findForward("toLogin");
}
System.err.println("name2="+name);
System.err.println("flag2="+flag);
System.err.println("--------------------------------------");
return mapping.findForward("toLogin");
}