私はユースケースを持っています
<html>
<head>
<s:head />
<sj:head jqueryui="true" />
<script type="text/javascript">
$.subscribe('hideTarget', function(event, data) {
$('#'+event.originalEvent.targets).hide("blind");
});
</script>
</head>
<body>
<div align="left" >
<div class="demo" align="center"><a href="#" id="button">Run Effect</a></div>
<div id="effect" style="display:none;">
Upload Photos Here
<s:form action="AjaxTest" method="post" theme="xhtml" enctype="multipart/form-data" >
<s:file name="userImage" label="User Image" />
<sj:submit targets="result" effect="blind" effectMode="show" onEffectCompleteTopics="hideTarget" value="Upload" button="true" />
</s:form>
<br/>
<img id="indicator" src="progressbar.gif" style="display:none" alt="loading"/>
</div>
<sj:div effect="pulsate" effectDuration="1500" onEffectCompleteTopics="hideTarget" cssClass="welcome" id="result"></sj:div>
</div>
<!-- End demo -->
</body>
ご覧のとおり、ajax 呼び出しを使用して単一のファイルをアップロードしています。[Run Effect] リンクをクリックすると、そのファイル タグで div がトグル ダウンし、ファイルを選択してアップロードすると、正常にアップロードされたメッセージが表示され、その後、その成功メッセージが非表示になります。 それまでは正常に動作しますが、私の問題は、別のファイルをアップロードしたいときにファイルタグが表示され、選択することもできますが、フォームを送信すると成功メッセージが表示されませんが、ファイルはサーバーとファイルタグにアップロードされます以前にアップロードされたファイル名は彼らの
注:私の要件は、ユーザーがajax呼び出しを使用してフォームを送信するたびに、正常にアップロードされたメッセージを表示することです
私のsuccess.jspは
<body>
<s:if test="hasActionMessages()">
<s:actionmessage/>
</s:if>
<s:if test="hasActionErrors()">
<s:actionerror/>
</s:if>
</body>
Struts.xml
<action name="AjaxTest" class="AjaxCallAction">
<result name="success">/success.jsp</result>
</action>
このhttp://www.weinfreund.de/struts2-jquery-showcase/index.actionの下のリンクのように