jstl和jsp脚本变量相互访问

1.jsp脚本访问jstl标准动作的变量,可以通过隐式的范围变量来获取,对于页面作用域的变量,可以通过pageContext.getAttribute()来获取,也可以通过动作来获取:

<c:set var="str" value="This is a JSTL page variable" scope="page"/>
<%
   String aStr =(String)pageContext.getAttribute("str");
   out.println(aStr+"<br/>");
%>

2.对于jstl动作访问jsp脚本变量,可以使用jsp表达式来获取,如:

<c:set var="a" value="<%=aStr%>" />

使用了上面方法的代码:

<c:set var="warnTime" value="${mlListItem.warnTime}" scope="page"/>
    <%
     String warnTimeStr =(String)pageContext.getAttribute("warnTime");
     String[] warnTime = warnTimeStr.split(" ");
     String warnTimeDate = warnTime[0];
     String[] warntTimeOther = warnTime[1].split(":");
     String warnTimeHour = warntTimeOther[0];
     String warnTimeMinute = warntTimeOther[1];
    %>
    <c:set var="hour" value="<%=warnTimeHour%>" />
    <c:set var="minute" value="<%=warnTimeMinute%>" />

//另外一段代码
<select id="hour" name="hour">
         <option value=""></option>
         <c:forEach var="i" begin="0" end="23" step="1">   
             <option value="${i}" <c:if test="${i==hour}">selected="selected"</c:if>>${i}</option>
             <br>   
        </c:forEach>
     </select>:
     <select id="minute" name="minute">
      <option value=""></option>
         <c:forEach var="i" begin="0" end="59" step="1">   
             <option value="${i}" <c:if test="${i==minute}">selected="selected"</c:if>>${i}</option
             <br>   
        </c:forEach>
     </select>分

原文地址:https://www.cnblogs.com/ruiati/p/5799185.html