js、JSP、servlet之间的传递小结
@ JS 与 JSP :JSP无法直接获取JS的值,只能通过隐藏表单或者dom节点设置。
JSP中设置隐藏表单input,或者设置任意一个隐藏或者不隐藏的节点比如div,
而JS就通过document.getElementById("attNBBM").value="变量值"设置节点值。
这样就实现了JS传值给JSP,JSP获取JS值的传值过程。
ExtJS获取JSP值的方法还有:Ext.get("id").getValue();
@ Servlet与JSP、JS传递
@ 前台传递值到后台Servlet的方式,我们常用的有:
1、url参数传值:url : '/PolicyPackage?tg=uploadPolicyAtt&nbbm='+nbbm+"&fileName="+fileName
2、form表单传值: <form id="NewForm" action="/PolicyPackage?tg=save" method="post" name="NewForm" >
@ Servlet获取前台传递值的方法:
String fileName = new String(request.getParameter("fileName").getBytes("iso-8859-1"),"utf-8");
@ Servlet传值到前台的方式:
1、PrintWriter out = response.getWriter():
out.print();--->>>这里可以动态生成html,也可以是JSON数据
2、将对象或者变量放在request中跳转到JSP页面
request.setAttribute("nbbm", instanceId);
this.getServletContext().getRequestDispatcher(request.getContextPath()+"/Hisense/PolicyConfirm/PolicyComfirm_show.jsp").forward(request, response);
@ JS/JSP 对应Servlet传值两种方式获取Servlet值的方法:
1、ExtJS获取JSON的值
var json = Ext.util.JSON.decode(result.request.responseText);
json.attBNNM;
2、JSP获取request的值
<%=request.getParameter("fileName")%>
==================================================================
页面跳转: document.location.href="/Hisense/AccountManagement/createAccount.jsp";