사용자가 스노우 보드 프로그램을 선택할 수있는 간단한 응용 프로그램을 작성 중입니다. 그들은 최대 3 개의 프로그램 만 선택할 수 있습니다. 프로그램은 프로그램을 저장하는 콜렉션을 검사하고,> 3 개의 항목이 포함되어 있으면 사용자가 사용할 수있는 모든 버튼을 비활성화해야합니다. 그러나 함수가 호출 된 것처럼 보이지 않습니다. onlick 등의 다른 이벤트 트리거를 시도했지만 아무 소용이 없습니다. 도움을 주시면 감사하겠습니다.javascript onload 이벤트가 호출되지 않음
자바 스크립트 기능
<script type="text/javascript">
function restrictSelection(t) {
var selectedButton = document.getElementById(t);
var selectedLessonSize = document.getElementById("selectedLessonSize");
if (selectedLessonSize.value > 3) {
alert("more than 3");
selectedButton.disabled = true;
} else {
selectedButton.disabled = false;
alert("less than 3");
}
}
</script>
JSP Foreach 루프 시도가 <input id="button${entry.key}" type="submit" .....
0으로 변경
<c:forEach var="entry" items="${lessonTimetable.lessons}">
<form method="POST" action="chooseLesson">
<tr>
<td><c:out value="${entry.key}"/></td>
<td><c:out value="${entry.value.description}"/></td>
<td><c:out value="${entry.value.date}"/></td>
<td><c:out value="${entry.value.startTime}"/></td>
<td><c:out value="${entry.value.endTime}"/></td>
<td><c:out value="${entry.value.level}"/></td>
<td><input type="hidden" name="lessonid" value="${entry.key}"/>
<input type="hidden" id="selectedLessonSize" value="${lessonSelection.numChosen}"/>
<input id="button${entry.key}" type="submit" value="select lesson" disabled="true" onload="restrictSelection(this)"/>
</td>
</tr>
</form>
</c:forEach>
외부 리소스 로딩을 끝내면 'onload' 이벤트가 발생하고'body', 'img','iframe' 등과 같은 요소가 트리거됩니다. – Teemu
흠, 나는 그것과 관련이 있다고 생각했다. – user2037720