struts2中使用ajax上传文件

发布于 2024-10-21 13:24:05 字数 29 浏览 3 评论 0原文

如何使用ajax在struts 2中上传文件

How can I upload a file in struts 2 using ajax

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

行雁书 2024-10-28 13:24:05

下载 Struts2 jQuery 插件,然后像平常使用 Struts2 一样进行操作。

<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<html>
  <head>
    <sj:head/>
  </head>
  <body>
    <s:form id="form" action="AjaxTest">
      <s:file name="myFile" ... />
      <sj:submit value="Submit Form" targets="myAjaxTarget"/>
    </s:form>
    <div id="myAjaxTarget">
    </div>
  </body>
</html>

Download the Struts2 jQuery Plugin and do it like you normaly do it with Struts2.

<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<html>
  <head>
    <sj:head/>
  </head>
  <body>
    <s:form id="form" action="AjaxTest">
      <s:file name="myFile" ... />
      <sj:submit value="Submit Form" targets="myAjaxTarget"/>
    </s:form>
    <div id="myAjaxTarget">
    </div>
  </body>
</html>
旧人哭 2024-10-28 13:24:05

如果您想将 json 数据返回给客户端,您可能会收到错误消息,出现文件下载对话框,将 json 下载为文本文件。我使用 struts2-json 插件来修复此错误,只需将以下配置添加到 struts.xml

<param name="contentType">text/plain</param>

我的示例中的操作中

        <action name="uploadFile" class="fileUploadAction">
            <interceptor-ref name="fileUploadStack"/>
            <result name="input">/WEB-INF/pages/uploadForm.jsp</result>
            <result name="success" type="json">
                 <param name="excludeProperties">
                         fileStoreManager, file
                 </param>
                 <param name="contentType">text/plain</param>
            </result>
            <result name="cancel" type="redirectAction">mainMenu</result>
        </action>

If you want to return json data to client, you can get the error that a file download dialog appear to download json as a text file. I use struts2-json plugin so to fix this error, just add the following config to your action in struts.xml

<param name="contentType">text/plain</param>

my sample

        <action name="uploadFile" class="fileUploadAction">
            <interceptor-ref name="fileUploadStack"/>
            <result name="input">/WEB-INF/pages/uploadForm.jsp</result>
            <result name="success" type="json">
                 <param name="excludeProperties">
                         fileStoreManager, file
                 </param>
                 <param name="contentType">text/plain</param>
            </result>
            <result name="cancel" type="redirectAction">mainMenu</result>
        </action>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文