总结一下JSP、JavaSript的传参

来源:互联网 发布:moto卡在正在检测网络 编辑:程序博客网 时间:2024/05/14 05:48

小小总结一下JSP、JavaSript的传参,仅作为一个备忘。

JSP:


[样例1]
<a href="productinfo.jsp?id=<%=PID%>&page=<%=intPage%>&keyword=<%=keyword%>&gsytype=<%=gystype%>"><%=ProductName%></a>

[说明1]
这个链接的母体为<%=ProductName%>,是本页的一个变量。它链接到新的页面productinfo.jsp,并给productinfo.jsp传递了4个参数id、page、keword、gsytype。
在新的页面productinfo.jsp中,要获得上个页面传来的值,你需要:
String id="";
String page="";
String keyword="";

id=request.getParameter("id");
page=request.getParameter("page");
keyword=request.getParameter("keyword");
gystype=request.getParameter("gystype");

if (id==null) id="";
if (page==null) page="";
if (keyword==null) keyword="";
if (gystype==null) gystype="";

--------------------------------------------------

例外是:response.sendRedirect("productinfo.jsp?id="+id);
我还不太清楚为什么不能写成
response.sendRedirect("productinfo.jsp?id=<%=id%>");

如果有知道的朋友,请留言指点 :)

--------------------------------------------------

[样例2]
对于表单,你就不需要通过“?”的形式传参了。注意的是,表单的提交是在<form>里的。
<form action="productinfo_t.jsp"  method="post"  name="formcontent"  onSubmit="javascript:return checkform();">

[说明2]

表单里的所有表单控件要向productinfo_t.jsp提交参数,不要写成form action="productinfo_t.jsp?Productname=<%=ProductName%>&..."的形式,直接在 productinfo_t.jsp里写:
String ProductCode="";
String ProductName="";
String ProductPara="";

ProductCode=request.getParameter("ProductCode");
ProductName=request.getParameter("ProductName");
ProductPara=request.getParameter("ProductPara");

if (ProductCode==null) ProductCode="";
if (ProductName==null) ProductName="";
if (ProductPara==null) ProductPara="";

 

JavaScirpt:

[样例]
<input name="upload" type="button" onClick="javascript:uploadpic('<%=id%>');" value="上传图片">
<script language="javascript">
function uploadpic(id)
{
   window.open("upload.jsp?id="+id+"","","height=250,width=500");
}
</script>

[说明]
第一句是jsp语句,表明在点击upload按钮时,触发javascript 的uploadpic()事件。此处<%=id%>是String类型,所以要加上两个单引号''。如果id是数字类型(int、long..)则不加单引号。
JavSript里,函数参数id不要写成<%=id%>,注意一点
window.open("upload.jsp?id="+id+"","","height=250,width=500"); 是JavaSript的语法
不要写成
window.open("upload.jsp?id=<%=id%>","","height=250,width=500");

                                                                                                          卡卡