在jsp中如何将el表达式的值赋给java变量

<%int j=0; %> <c:forEach items="${blankList}" var="blank"><!-- id: ${blank.id}</br>--><!-- 答案 :${blank.blankAnswers}<br/>--> <li> <%=count %>. ${blank.blankContent} <% for(int i=0;i<16;i++){ %> <input id="input" type="text" name="blank[<%= j %>].blankAnswers" style="border:none;border-bottom:1px solid #000;width: 100px;margin-top: 1em;"> <% } %>。 </li> <%j++; %> <%count++;%> </c:forEach> </ol> </div>

------------------------
我想将上面加粗的${blank.blankAnswers}赋给i。让i动态变化。

第1个回答  2014-01-15
一般页面想取值,用这个办法:
<c:set var="bl" value="${blank.blankAnswers}" scope="request"></c:set>
<% i=request.getAttribute("bl")%>追问

但是我不光是想要${blank.blankAnswers}的值。${blank.blankAnswers}表示的是一个用","分隔的字符串。我想取得他的长度。${blank.blankAnswers}的值为:珊瑚癣净、 枇杷止咳胶囊、强力枇杷露、 枇杷止咳颗粒、小儿咽扁颗粒、复方桔梗枇杷糖浆、精乌胶囊

追答

你可以把它转换为字符串后split,这样返回的是数组,数组大小可以取吧?

本回答被提问者采纳
第2个回答  2014-01-15
直接在<%%>中用i=request.getAttribute("blank.blankAnswers");即可追问

${blank.blankAnswers}表示的是:珊瑚癣净、 枇杷止咳胶囊、强力枇杷露、 枇杷止咳颗粒、小儿咽扁颗粒、复方桔梗枇杷糖浆、精乌胶囊、小儿氨酚烷胺颗粒、 小儿清毒糖浆 、帕特药盒、小儿感冒颗粒、夜宁糖浆、 小儿化痰止咳颗粒、苑叶止咳糖浆、伤筋正骨酊、古威活络酊。的长度。我是要取这个长度。但是用你的方法报错了。是不是对象类型不能这样获取。

追答

那你就先存到一个域里头啊,,到时在用request去set的名字

追问

你说的是这样吗?但是还是不行啊 !

第3个回答  2014-01-15
你可以不用小脚本

引用<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
直接写试试<c:forEach begin="${blank.blankAnswers()}" end="16">
</c:forEach>
相似回答