1

有 JSP 文件 upLoad.jsp 和 popup_Tree.jsp,在页面 upLoad.jsp 上的 ViewTree.jsp 当您单击按钮时(value="..."),打开弹出窗口(ViewTree.jsp),其中显示目录树,您可以选择保存文件的文件夹。在弹出窗口中有一个“上传”按钮。

有 JSP 文件 upLoad.jsp

<form name="fupload" method="post" enctype="multipart/form-data">
Upload file: <input type="f" name="f[]" id="filename" multiple="true" />
<input type="submit" value="Upload" onClick="return buttonupload();"/>
<input type="button" value="..." onClick="top.popup_Show('/_additional/upload_Js/ViewTree', 300, 380);return false;void(0);"/>           
</form>
<% ...
String[] pathDir = request.getParameterValues("pathDir"); 
%>

popup_Tree.jsp

<% ...
String pathDir = getServletContext().getRealPath(dir);
%>
<form style="display:none;">
<input type="hidden" name="dirPatch" id="dirPatch" value="<%=pathDir%>"/>
</form>

我想传达(from popup_Tree.jsp to upLoad.jsp)保存文件的路径

我这样做是为了传达“文件夹的路径”的含义:popup_Tree.jsp -->

<% String pathDir = getServletContext().getRealPath(dir);%>
<form style="display:none;" name="f" metod="post" action= "/_additional/upload.jsp">
<input type="hidden" name="dirPatch" id="dirPatch" value="<%= pathDir %>"/>
</form>
<%
    request.setAttribute("dirPtch", pathDir);
        String strViewPage="/_additional/upload.jsp";
        RequestDispatcher dispatcher = request.getRequestDispatcher(strViewPage);
        if (dispatcher != null){
        dispatcher.forward(request, response);
        } 
%>

upLoad.jsp -->

<%
out.println(request.getAttribute("dirPtch"));
%>

但输出 - 空

4

1 回答 1

0

您正在发布一个隐藏的表单变量:

<input type="hidden" name="dirPatch" id="dirPatch" value="<%= pathDir %>"/>

所以,upload.jsp你需要使用getParameter

<% out.println(request.getParameter("dirPtch")); %>

或者,您可以使用EL

${param.dirPtch}
于 2012-10-01T15:41:24.770 回答