reportform2.jsp

来自「Java的框架」· JSP 代码 · 共 154 行

JSP
154
字号
<%@ include file="/common/taglibs.jsp"%>

<%@ page import="mcap.core.reporting.model.*" %> 


<c:if test="${param.method == 'add'}">
	<c:set var="title"><fmt:message key="addReport.title"/></c:set>
	<c:set var="heading"><fmt:message key="addReport.heading"/></c:set>
	<c:set var="message"><fmt:message key="addReport.message2"/></c:set>
</c:if>
<c:if test="${param.method == 'edit'}">
	<c:set var="title"><fmt:message key="editReport.title"/></c:set>
	<c:set var="heading"><fmt:message key="editReport.heading"/></c:set>
	<c:set var="message"><fmt:message key="editReport.message2"/></c:set>
</c:if>
<html>
	<head>
		<title><c:out value="${title}"/></title>
		<content tag="heading">
			<c:out value="${heading}"/>
		</content>
    	<script type="text/javascript" src="<c:url value='/scripts/selectbox.js'/>"></script>
	</head>
	<script type="text/javascript" language="JavaScript">
	
		var bCancel;
		var back = false;
		
		function checkSubmit(){ 
			if (bCancel){
				 	return true;
			}
			if (back){
				 	return true;
			}
			//Check for sub report
			for(i=0; i<document.forms.reportForm.elements.length; i++) {
				if(document.forms.reportForm.elements[i].type=="file"){
					var fileCtl = document.forms.reportForm.elements[i];
					if (!checkSubRpt(fileCtl)){
						return false;
					}
				}
			}
			return true;
		}

		function checkSubRpt(fileCtl){
			//Check if there is existing uploaded file (see if the value is empty)
			//If there is no exisitng file, then file upload is required				
			var fileCtlValue = fileCtl.value;
			
			if(fileCtlValue.length == 0) {
				var fileCtlName =fileCtl.name;
				var subReportName = fileCtlName.substring(0,fileCtlName.lastIndexOf("_"));
				//Get the hidden control that save the file previously added using the file control
				//This control is mostly use for edit operation to ensure that a new file has been uploaded  
				var fileCtlSource = eval("document.forms.reportForm." + subReportName);
				if (fileCtlSource.value.length == 0) {
					fileCtl.focus;
					alert("The file for " + subReportName + " is required.");
					return false;
				}
				return true;
			}else{
				//Check for correct file extension
		  	var ext = fileCtlValue.substring(fileCtlValue.length-3,fileCtlValue.length);
			  ext = ext.toLowerCase();
			  if(ext != 'xml') {
			  	fileCtl.focus();
			    alert('Please select a valid jasper design file with .jrxml or .xml extension.');
			    return false; 
			  }
		    return true;
			}
		}		

		
		
	</script>
 	<body>
		<span id="message"><c:out value="${message}"/></span>
		<div class="separator"></div>
		<spring:bind path="report.*">
		    <c:if test="${not empty status.errorMessages}">
		    <div class="error">	
		        <c:forEach var="error" items="${status.errorMessages}">
		            <img src="<c:url value="/images/iconWarning.gif"/>"
		                alt="<fmt:message key="icon.warning"/>" class="icon" />
		            <c:out value="${error}" escapeXml="false"/><br />
		        </c:forEach>
		    </div>
		    </c:if>
		</spring:bind>
		<c:set var="pageButtons">
			<tr><td colspan="2">&nbsp;</td></tr>
			<tr><td colspan="2">&nbsp;</td></tr>
			<tr>
				<td width="20%" valign="top">&nbsp;
				</td>
				<td class="buttonBar" width="80%" valign="top">
		      	<input type="submit" class="button" name="_target0" onclick="back=true;bCancel=false" value="<fmt:message key="button.previous"/>" />		
		      	<input type="submit" class="button" name="_finish" onclick="bCancel=false" value="<fmt:message key="button.finish"/>" />		
	   			<input type="submit" class="button" name="_cancel" onclick="bCancel=true" value="<fmt:message key="button.cancel"/>" />
				</td>
			</tr>
		</c:set>
		<form method="post" action="<c:url value="/reportForm.action"/>" id="reportForm" name="reportForm" enctype="multipart/form-data" onSubmit="return checkSubmit()">
			<input type="hidden" name="method" value="<c:out value="${param.method}"/>" />
			<input type="hidden" name="from" value="<c:out value="${param.from}"/>" />
			<input type="hidden" name="reportName" value="<c:out value="${report.name}"/>" />			
			<input type="hidden" name="reportTempID" value="<c:out value="${reportTempID}"/>" />	
			<table class="detail">
			<c:if test="${empty report.subReports}">
				<fmt:message key="subreport.notfound"/>
				<table width="100%">
					<c:out value="${pageButtons}" escapeXml="false" />
				</table>
			</c:if>
			<c:if test="${not empty report.subReports}">
			<table>
				<c:forEach var="subReport" items="${report.subReports}">
				<tr>
			  	<th width="20%">
			   		<mcaps:label key="subreport.name"/>
			   	</th>
					<td width="80%">
						<c:out value="${subReport.name}"/> 
					</td>					
				</tr>
				<tr>
			  	<th width="20%">
			   		<mcaps:label key="subreport.sourceFile"/>
			   	</th>
					<td width="80%">
						<input type="hidden" id="<c:out value="${subReport.name}"/>" 
							name="<c:out value="${subReport.name}"/>" 
					  		value="<c:out value="${subReport.sourceFile}"/>">
						<input type="file" name="<c:out value="${subReport.name}"/>_file" size="85" onchange="javascript:checkSubRpt(this)"> 
					</td>					
				</tr>
				<tr><td colspan="2">&nbsp;</td></tr>
				</c:forEach>
				<c:out value="${pageButtons}" escapeXml="false" />
			</table>
			</c:if>
			</table>
		</form>	
		
<script type="text/javascript">
highlightFormElements();
</script>
	</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?