私のアプリケーションでは、(チェックボックスを使用して)ユーザーの名前を選択し、[データのエクスポート]ボタンをクリックすると、ポップアップが開きます(エクスポートするかどうかを尋ねるPDF
)CSV
。私はjQueryUI
以前modal-dialog
チェックボックスは別の形式であり、「データのエクスポート」はその形式から外れているため、document.location.hrefを使用してアクションクラスをヒットすると、チェックボックスの値を取得できません。
これは、JSPでチェックボックスが形成される方法です
<s:form action="dashboard" theme="simple">
<s:checkbox name="selectedStudents[%{#status.index}].studentId" id="student%{#status.index}" fieldValue="%{studentId}" value="0"/>
</s:form>
[データのエクスポート]ボタンをクリックすると、jqueryからメソッド(struts-2アクションで記述)を呼び出します。以下のjqueryコードをご覧ください
$(function() {
$("#exportStudentReports").click(function(){
$( "#exportModalWindow" ).dialog({
resizable: false,
height: 50,
width: 200,
modal: true,
hide: "explode",
buttons:{
"Export": function() {
var link = "/web/teacher/exportReport!exportStudentReports.action?exportType=pdf" ;
document.location.href=link;
$("#exportModalWindow").dialog("close");
}
}
});
var isOpened = $("#exportModalWindow").dialog("isOpen") ;
if (!isOpened) {
$("#exportModalWindow").dialog("open");
}
$("#exportStuReportPDF").attr("checked","checked") ;
});
});
これが私のstruts-action-configurationの方法です
<action name="exportReport" class="com.hmco.ssms.action.teacher.ExportReportAction">
<result name="studentReportPDF" type="stream">
<param name="inputName">inputStream</param>
<param name="contentType">application/pdf</param>
<param name="contentDisposition">attachment;filename="sample.pdf"</param>
<param name="bufferSize">1024</param>
</result>
</action>
これについて私を助けてください。ありがとう