JSTL中的会话范围变量访问

时间:2019-08-29 08:22:42

标签: jsp jstl

访问Servlet在会话中放入的JSP中的sessionScope变量。 Servlet进行数据库调用,并返回我们需要在下拉列表中显示在JSP中的List。 DB调用工作正常,并且将列表放入会话中,但是在JSP(通过List循环的JSTL代码)中,它仅在刷新页面后出现

尝试

<script type="text/javascript">
$(document).ready(function(){    
    //Check if the current URL contains '#'
    if(document.URL.indexOf("#")==-1){
        // Set the URL to whatever it was plus "#".
        url = document.URL+"#";
        location = "#";

        //Reload the page
        location.reload(true);
    }
});

有效,但在首次重新加载页面时寻找更优雅的解决方案

<form action="creation.do" id="myForm"
        style="width: 90%; margin-left: 2%; border: 1px solid blue; background-color: #dcdcdc">

        <table
            style="border: 2px solid #003eff; background-color: #c4e3f3; width: 50%; height: 5%; margin: 10px">
            <tr>
                <td style="width: 10%;" align="right">Select Template : <font
                    size="5" color="red"> * </font></td>
                <td style="width: 25%;"><select id="name" name="type"
                    style="width: 80%;">
                        <option value="Select">-- Select --</option>
                        <c:forEach var="temp" items="${sessionScope.list}" varStatus="loop">
                            <option value="${temp}">${temp}</option>
                        </c:forEach>
                </select></td>
                <td style="width: 2%; padding-right: 10px">
                    <button type="submit" id="submit" name="submit" value="submit"
                        style="background-color: #37617A; color: white; padding: 8px 20px; margin: 8px 0; border: none; border-radius: 4px; cursor: pointer;"
                        onclick="callPageLoadWait(); submitButton()">Submit</button>
                </td>
            </tr>
        </table>
    </form>

0 个答案:

没有答案