reportform1.jsp

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

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

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

<c:choose>
	<c:when 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.message1"/></c:set>
	</c:when>
	<c:otherwise>
		<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.message1"/></c:set>
	</c:otherwise>
</c:choose>
<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"><!--
	
		function checkSubmit(){ 
			if (bCancel){
				 	return true;
			}
	
			if (onFormSubmit(document.forms.reportForm)){
				return checkReport();
			}else {return false;}
		}
		
		function checkReport() {
			var fileCtl = document.forms.reportForm.reportFile;
			if (fileCtl == null) return;
			var fileCtlValue = fileCtl.value;
			
		  <c:if test="${param.method == 'edit'}">
			if (fileCtlValue.length == 0) return true;
			</c:if>
			<c:if test="${param.method == 'add'}">
			var fileCtlSource = eval("document.forms.reportForm.sourceFile");
			if (fileCtlValue.length == 0 && fileCtlSource.value.length == 0) {
				fileCtl.focus;
				alert("Report Template is a required field.");
				return false;
		  }
		  if (fileCtlValue.length == 0) fileCtlValue = fileCtlSource.value;
			</c:if>
		  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; 
		  }
		  else{
		    return true;	 
		  }
		}
		
		function toggleTemplateUpload(){
			var fileNameDiv = document.getElementById("currSourceFile");
			if (fileDiv != null){
				if (fileDiv.innerHTML.length > 0){
					fileNameDiv.style.display = 'inline';
					fileDiv.innerHTML = "";
				}else{
					fileNameDiv.style.display = 'none';
					fileDiv.innerHTML = fileDivInnerHTML;
				}
			}
		}
		
		
	//--></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 width="20%" valign="top">&nbsp;
				</td>
				<td class="buttonBar" width="80%" valign="top">
		     	 	<input type="submit" class="button" name="_target1" onclick="bCancel=false" value="<fmt:message key="button.next"/>" />		
	   				<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()">
			<c:choose>
				<c:when test="${!empty param.method}">
					<input type="hidden" name="method" value="<c:out value="${param.method}"/>" />
				</c:when>
				<c:otherwise>
					<input type="hidden" name="method" value="add" />
		  	</c:otherwise>
		  </c:choose>
			<input type="hidden" name="from" value="<c:out value="${param.from}"/>" />
			<input type="hidden" name="reportName" value="<c:out value="${param.reportName}"/>" />	
			<input type="hidden" name="reportTempID" value="<c:out value="${reportTempID}"/>" />	
			
			<spring:bind path="report.version">
				<input type="hidden" id="<c:out value="${status.expression}"/>" 
					name="<c:out value="${status.expression}"/>" 
			 		value="<c:out value="${status.value}"/>">
			</spring:bind> 
			<table class="detail">
				<tr>
			  	<th width="20%">
			   		<mcaps:label key="report.name"/>
			   	</th>
					<td width="80%">
						<spring:bind path="report.name">
							<c:choose>
								<c:when test="${param.method == 'edit'}">
									<input type="hidden" id="<c:out value="${status.expression}"/>" 
										name="<c:out value="${status.expression}"/>" 
							  			value="<c:out value="${status.value}"/>" size="40">
									<c:out value="${status.value}"/>
								</c:when>
								<c:otherwise>
									<input type="text" id="<c:out value="${status.expression}"/>" 
										name="<c:out value="${status.expression}"/>" 
							  			value="<c:out value="${status.value}"/>" size="40">
						  	</c:otherwise>
						  </c:choose>
						</spring:bind>  
					</td>					
				</tr>
					<tr>
				  	<th width="20%">
				   		<mcaps:label key="report.jndiDataSourceName"/>
				   	</th>
					<td width="80%">
						<spring:bind path="report.jndiDataSourceName">
							<input type="text" id="<c:out value="${status.expression}"/>" 
								name="<c:out value="${status.expression}"/>" 
					  			value="<c:out value="${status.value}"/>" size="40">
						</spring:bind> 
					</td>					
				</tr> 
				<tr>
				  	<th width="20%">
				   		<mcaps:label key="report.sourceFile"/>
				   	</th>
					<td width="80%">
						<spring:bind path="report.sourceFile">
							<input type="hidden" id="<c:out value="${status.expression}"/>" 
								name="<c:out value="${status.expression}"/>" 
					  			value="<c:out value="${status.value}"/>">

					  		<c:set var="fileCtlVis" value="display:inline" />
					  		<c:if test="${param.method == 'edit'}"> 
					  			<c:set var="fileCtlVis" value="display:none" />
									<c:set var="sourceFileParts" value="${fn:split(status.value,'/')}" />
									<c:set var="len" value="${fn:length(sourceFileParts)}" />
									<div id="currSourceFile" name="currSourceFile" style="display:inline">
										${sourceFileParts[len-1]}
										<a href="#" onclick="javascript:toggleTemplateUpload();">
											<fmt:message key="report.template.redo.upload" /> 
										</a>									  
									</div>
								</c:if>
								<div id="fileDiv" style="display:inline">
									<input type="file" name="reportFile" size="80" onchange="javascript:checkReport()" > 
						  		<c:if test="${param.method == 'edit'}"> 
										<a href="#" onclick="javascript:toggleTemplateUpload();">
											<fmt:message key="report.template.undo.upload" /> 
										</a>									  
									</c:if>
								</div>
						</spring:bind> 
					</td>					
				</tr>
				<tr>
				  	<th width="20%">
				   		<mcaps:label key="report.description"/>
				   	</th>
					<td width="80%">
						<spring:bind path="report.description">
					        <textarea cols="80" rows="2" id="<c:out value="${status.expression}"/>" 
					        	name="<c:out value="${status.expression}"/>"><c:out value="${status.value}"/></textarea>
						</spring:bind> 
					</td>					
				</tr>
				<tr>
				  	<th width="20%">
				   	</th>
					<td width="80%">
						<spring:bind path="report.enabled">
							<input type="hidden" name="_<c:out value="${status.expression}"/>">
							<input type="checkbox" name="<c:out value="${status.expression}"/>" value="true" 
		            		<c:if test="${status.value}">checked</c:if>/>	
							<fmt:message key="report.enabled"/>				
						</spring:bind> 
					</td>					
				</tr>
				<tr>
					<td width="20%"></td>
					<td width="80%">
	        			<fieldset class="pickList">
				          	<legend>
				            	<fmt:message key="report.assignRoles"/>
				           	</legend>
	           
         					<table class="pickList">
					          	<tr>
					            	<th class="pickLabel">
					              	<mcaps:label key="report.availableRoles" colon="false" styleClass="required"/>
					             	</th>
					              
					             	<td>
					             	</td>
					              
					             	<th class="pickLabel">
					              	<mcaps:label key="report.roles" colon="false" styleClass="required"/>
					             	</th>
					          	</tr>
	                
              					<mcaps:roleList key="availableRoles" scope="request" />
                    
              					<mcaps:removeList from="${availableRoles}" with="${report.roleList}" key="leftList" scope="request" />
                   
              					<c:set var="rightList" value="${report.roleList}" scope="request"/>
	            
					            <c:import url="/WEB-INF/pages/pickList.jsp">
					            	<c:param name="listCount" value="1"/>
					              	<c:param name="leftId" value="availableRoles"/>
					              	<c:param name="rightId" value="selectedRoles"/>
					           	</c:import>
	        				</table>
          				</fieldset>
					</td>
				</tr>
				<c:out value="${pageButtons}" escapeXml="false" />
			</table>
		</form>	
		
<script type="text/javascript">
	
<%-- the following are used for toggling the file upload --%>
var fileDiv = document.getElementById("fileDiv");
var fileDivInnerHTML = fileDiv.innerHTML;
var fileCtl = document.getElementById("reportFile");
<c:if test="${param.method == 'edit'}"> 
fileDiv.innerHTML = "";
</c:if>
		
highlightFormElements();

<%-- if we're doing an add, change the focus --%>

<c:set var="focus" value="name"/>

var focusControl = document.forms["reportForm"].elements["<c:out value="${focus}"/>"];

function onFormSubmit(theForm) {
	selectAll('selectedRoles');
	return validateReport(theForm);
}


</script>

<v:javascript formName="report" staticJavascript="false"/>
<script type="text/javascript"
      src="<c:url value="/scripts/validator.jsp"/>">
</script>
		
	</body>
</html>

⌨️ 快捷键说明

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