JSP中java代码与js之间的传值

附件很重要!!!提醒我记得参看。

java   ---->   js:
List的传递:直接赋值就行,如下:
var userIdList = "<%=archiveNameList%>";  //不加引号是错误的!


为js中var赋java变量值(同样适用于el表达式和struts2标签等)时,切记需要为赋值串加引号"":
如果java变量为纯数字类型的,可以不加,js可以将其识别为Number类型的;但任何时候都加上不失为一个好的习惯,可以让你不为莫名其妙的错误所困扰。

引用

<script type="text/javascript">
    var ploIds = "<%=request.getAttribute("refreshStrParam")%>"; //写成var ploIds = <%=request.getAttribute("refreshStrParam")%> 是错误的!
    alert(ploIds);
    <% String s = "abc";%>
    var s = "<%=s%>"; //写成 var s = <%=s%>;是错误的
    alert(s);
    alert("${param.name}"); //写成alert(${param.name})是错误的
</script>



数组的传递:不能像List那样直接赋值(如果直接将数组赋给var的话,得到的var值为"[Ljava.lang.String;@1fcc4f8")。可以这样做:
var archiveNameAll = new Array();
<% for(int i=0;i< archiveNameArr.length; i++) {%>
    archiveNameAll[<%=i%>] = "<%=archiveNameArr[i]%>";	//因为这里的<%=i%>可转换为js中的Number类型,所以其外围加不加引号都可以!
<%}%>



http://www.iteye.com/problems/15171
http://www.iteye.com/problems/15172

你可能感兴趣的:(java,jsp)