JSP中获取jstl中的数据

我们在编程JSP时,有时会须要訪问jstl中的数据,或者说是el表达式中的数据。

比方,

<c:forEach    varStatus="data1" var="data" items="${alltemphotmeltdata}">
<tr>
<td>
${data.hNo }
</td>
<td>
${data.hDate }
</td>
<td>
${data.hHour }
</td>
<td>
${data.hEnd}
</td>
<td>
${data.hOperat }
</td>

</tr>

</c:forEach >

在上面代码段中,若想获取el表达式中的值进行处理时能够这样做:

<td>
<%
  String HGPS_latitude=((HotmeltData)pageContext.getAttribute("data")).getHGPS_latitude().toString().replace(".","").replace("度",".").replace("分","");
  String HGPS_longitude=((HotmeltData)pageContext.getAttribute("data")).getHGPS_longitude().toString().replace(".","").replace("度",".").replace("分","");
  float latitude=Float.parseFloat(HGPS_latitude.substring(0, 2))+Float.parseFloat(HGPS_latitude.substring(2, HGPS_latitude.length()))/60;
  float longitude=Float.parseFloat(HGPS_longitude.substring(0, 3))+Float.parseFloat(HGPS_longitude.substring(3, HGPS_longitude.length()))/60;
%>
<a href="http://api.map.baidu.com/marker?location=<%=latitude%>,<%=longitude%>&title=定位&content=百度&output=html" target="_blank">地图定位</a>

</td>

上面红色的地方就是能够获得el中的数据。

正如上面所说,能够利用
pageContext.getAttribute()
request.getAttribute()
session.getAttribute()
application.getAttribute()
得到值。 

又如:


<c:set var="a" value="hello a" scope="request" />
<c:set var="b" value="hello b"/>

<%
out.print(request.getAttribute("a") + "<br/>");
out.print(pageContext.getAttribute("b"));
%>

同理,也能够从jsp中得到变量放入jstl的变量中。

posted @ 2015-05-09 20:28  mengfanrong  阅读(3134)  评论(0编辑  收藏  举报