advancedscheduleform1.jsp

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

JSP
356
字号
<%@ include file="/common/taglibs.jsp"%>
<%@ page import="java.util.Calendar" %>

<parameter name="menu" value="All" />

<c:choose>
	<c:when test="${param.method == 'edit'}">
		<c:set var="title"><fmt:message key="editAdvancedSchedule.title"/></c:set>
		<c:set var="heading"><fmt:message key="editAdvancedSchedule.heading"/></c:set>
		<c:set var="message"><fmt:message key="editAdvancedSchedule.message"/></c:set>
	</c:when>
	<c:otherwise>
		<c:set var="title"><fmt:message key="addAdvancedSchedule.title"/></c:set>
		<c:set var="heading"><fmt:message key="addAdvancedSchedule.heading"/></c:set>
		<c:set var="message"><fmt:message key="addAdvancedSchedule.message"/></c:set>
	</c:otherwise>
</c:choose>
<c:set var="dateformat"><fmt:message key="date.format"/></c:set>
<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" src="<c:url value='/scripts/popupcalendar/popUpCal.js'/>"></script>
	<script type="text/javascript">
		pUCImgDir =  "<c:url value="/scripts/popupcalendar/" />";
		drawPopUpCalendar ();
		
		function updateJobNameAndGrp(ctl){
			var str=ctl.value.split("[dot]");		
			document.forms[0].elements.jobGroup.value = str[0];
			document.forms[0].elements.job.value = str[1];
		}
		
		function scheduleGrpSelectChange(ctl){
			if (ctl.value == "<new>"){
				document.forms[0].elements.groupText.style.display = "inline";
				document.forms[0].elements.groupText.focus();
			}else{
				document.forms[0].elements.groupText.style.display = "none";
				document.forms[0].elements.group.value = ctl.value;
			}
		}
			
		function scheduleGrpTextChange(ctl){
			document.forms[0].elements.group.value = ctl.value;
		}

		
	</script>
 	<body>
		<c:choose>
 			<c:when test="${param.method == 'edit' && !empty advancedSchedule && empty advancedSchedule.name}">
		    <div class="error">	
					<img src="<c:url value="/images/iconWarning.gif"/>"
               alt="<fmt:message key="icon.warning"/>" class="icon" />
          <fmt:message key="errors.schedule.notfound">
					 	<fmt:param value="${param.scheduleName}"/>
					 	<fmt:param value="${param.groupName}"/>
					 	<fmt:param value="${param.jobName}"/>
					 	<fmt:param value="${param.jobGroupName}"/>
					</fmt:message><br>
		    </div>
		    
				<c:choose>
		 			<c:when test="${!empty param.from}">
				  	<c:url var="backUrl" value="/schedules.action"/>
					</c:when>
					<c:otherwise>
				  	<c:url var="backUrl" value="/job.action">
							<c:param name="from" value="list"/>
							<c:param name="jobName" value="${param.jobName}"/>
				  		<c:param name="groupName" value="${param.jobGroupName}"/>
						</c:url>   
					</c:otherwise>
				</c:choose>
				<a href="<c:out value="${backUrl}"/>">&#171; Back</a>
 			</c:when>
 			<c:otherwise>
				<span id="message"><c:out value="${message}"/></span>
				<div class="separator"></div>
				<spring:bind path="advancedSchedule.*">
				    <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="/advancedScheduleForm.action"/>" id="advancedScheduleForm" name="advancedScheduleForm" onsubmit="return onFormSubmit(this)">
					<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="jobName" value="<c:out value="${param.jobName}"/>" />			
					<input type="hidden" name="jobGroupName" value="<c:out value="${param.jobGroupName}"/>" />			
					<input type="hidden" name="scheduleName" value="<c:out value="${param.scheduleName}"/>" />			
					<input type="hidden" name="groupName" value="<c:out value="${param.groupName}"/>" />			
					<spring:bind path="advancedSchedule.pattern">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.patternChoice">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.secValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.minuteValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.hourValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.dayOfMonthValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.monthValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.dayOfWeekValue">
						<input type="hidden" id="<c:out value="${status.expression}"/>" 
							name="<c:out value="${status.expression}"/>" 
							value="<c:out value="${status.value}"/>">
					</spring:bind> 
					<spring:bind path="advancedSchedule.yearValue">
						<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">
						<!-- If param is empty, its is routed from schedules.action, entry for job name and group has to be added -->
						<c:choose>
							<c:when test="${empty param.jobName && empty param.jobGroupName}">
								<tr>
							  	<th width="15%">
							  		<b>* <fmt:message key="job.fullname"/></b>
							   	</th>
									<td width="75%">
										<select id="jobNameAndGrp" name="jobNameAndGrp" 
											onchange="javascript:updateJobNameAndGrp(this);">
											<c:forEach var="j" items="${jobList}">
												<c:set var="objectText">
													<c:out value="${advancedSchedule.jobGroup}"/>.<c:out value="${advancedSchedule.job}"/>
												</c:set>		  		
												<c:set var="optionText">
													<c:out value="${j.group}"/>.<c:out value="${j.name}"/>
												</c:set>		  		
												<c:set var="optionValue">
													<c:out value="${j.group}"/>[dot]<c:out value="${j.name}"/>
												</c:set>		  		
									  		<option name="<c:out value="${optionText}"/>" 
									  			value="<c:out value="${optionValue}"/>"
									  			<c:if test="${optionText==objectText}">
									  				selected
									  			</c:if> >				  		 
									  			<c:out value="${optionText}"/>
							      		</option>
									  	</c:forEach>
											<c:if test="${objectText == '.'}">
							      		<option name="." value="" selected>
							      		</option>
											</c:if>
									  </select>
										<spring:bind path="advancedSchedule.jobGroup">
											<input type="text" id="<c:out value="${status.expression}"/>" 
												name="<c:out value="${status.expression}"/>" 
									  		value="<c:out value="${status.value}"/>" style="visibility:hidden">
										</spring:bind> 
										<spring:bind path="advancedSchedule.job">
											<input type="text" id="<c:out value="${status.expression}"/>" 
												name="<c:out value="${status.expression}"/>" 
									  		value="<c:out value="${status.value}"/>" style="visibility:hidden">
										</spring:bind> 
									</td>					
								</tr>
							</c:when>
							<c:otherwise>
								<tr>
							  	<th width="15%">
							   		<mcaps:label key="advancedSchedule.jobGroup"/>
							   	</th>
									<td width="75%">
										<spring:bind path="advancedSchedule.jobGroup">
											<input type="hidden" id="<c:out value="${status.expression}"/>" 
												name="<c:out value="${status.expression}"/>" 
									  		value="<c:out value="${status.value}"/>">
											<c:out value="${status.value}"/>
										</spring:bind> 
									</td>					
								</tr>
								<tr>
							  	<th width="15%">
							   		<mcaps:label key="advancedSchedule.job"/>
							   	</th>
									<td width="75%">
										<spring:bind path="advancedSchedule.job">
											<input type="hidden" id="<c:out value="${status.expression}"/>" 
												name="<c:out value="${status.expression}"/>" 
									  		value="<c:out value="${status.value}"/>">
											<c:out value="${status.value}"/>
										</spring:bind> 
									</td>					
								</tr>
							</c:otherwise>
						</c:choose>
							<tr>
					  	<th width="15%">
					   		<mcaps:label key="advancedSchedule.group"/>
					   	</th>
							<td width="75%">
								<spring:bind path="advancedSchedule.group">
								<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>
											<select id="<c:out value="${status.expression}"/>Select" name="<c:out value="${status.expression}"/>Select" onchange="javascript:scheduleGrpSelectChange(this);">
										  	<option name="empty" id="empty"></option>
										  	<option name="newGroup" id="newGroup">&lt;new&gt;</option>
												<c:forEach var="scheduleGroupStr" items="${scheduleGroupList}">
										  		<option name="<c:out value="${scheduleGroupStr}"/>" 
										  			value="<c:out value="${scheduleGroupStr}"/>"
										  			<c:if test="${scheduleGroupStr==status.value}">
										  				selected
										  			</c:if> >				  		 
										  			<c:out value="${scheduleGroupStr}"/>
								      		</option>
										  	</c:forEach>
									  	</select>
									  	<input type="text" id="<c:out value="${status.expression}"/>Text" 
												name="<c:out value="${status.expression}"/>Text" 
									  		value="<c:out value="${status.value}"/>" size="20" style="display:none" onchange="javascript:scheduleGrpTextChange(this);">
											<input type="hidden" 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="15%">
					   		<mcaps:label key="advancedSchedule.name"/>
					   	</th>
							<td width="75%">
								<spring:bind path="advancedSchedule.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="15%">
					   		<mcaps:label key="advancedSchedule.description"/>
					   	</th>
							<td width="75%">
								<spring:bind path="advancedSchedule.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>
					</table>
					<div class="separator"></div>
					<table width="100%">
						<c:out value="${pageButtons}" escapeXml="false" />
					</table>	
				</form>	
				
				<script type="text/javascript">
				//highlightFormElements();
				
				<%-- if we're doing an add, change the focus --%>
				
				<c:set var="focus" value="name"/>
				
				var focusControl = document.forms["advancedScheduleForm"].elements["<c:out value="${focus}"/>"];
				
				function onFormSubmit(theForm) {
					//if not cancel button is clicked, perform validation on end date and repeat count
					//If No End Date is selected, the Repeat Forever must be selected
//					if (!bCancel){
//						if (validateAdvancedSchedule(theForm)){
//								if (document.forms[0].elements.startTime.value.length == 0 && 
//								document.forms[0].elements.endTime.value.length > 0){
//								alert("\'Start Time\' is required, if \'End Time\' is specified.");
//								return false;
//							}
//							return true;
//						}
//						return false;
//					}
					return validateAdvancedSchedule(theForm);
				}
				
				
				</script>
				
				<v:javascript formName="advancedSchedule" staticJavascript="false"/>
				<script type="text/javascript"
				      src="<c:url value="/scripts/validator.jsp"/>">
				</script>
			</c:otherwise>
		</c:choose>		
	</body>
</html>

⌨️ 快捷键说明

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