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}"/>">« 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">
</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"><new></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 + -
显示快捷键?