この Javascript スクリプトを使用して、Exam テーブルから行を取得しています。また、Exam テーブルからプルされるものは、サブジェクト テーブルもプルする必要があります。以下は、JavascriptとJavaを使用して試したことです。
<script type="text/javascript">
function selRow(){document.getElementById('ExamId').onchange = function() {
document.getElementById('SubjectId').selectedIndex = this.selectedIndex;
}}</script>
したがって、この全体に対する私の意図は、ユーザーが ExamId を選択すると、サブジェクトがデータベースに ExamFK を持っているため、Exam に属する SubjectId をプルできるようにすることです。
これは、データベースからの ExamID プルの私のコードです。
<td width="121"><select name="txtExam" id="ExamId" onChange="selRow()">
<option value="">[Select an Exam First]</option>
<%if (exams != null && !exams.isEmpty()){
for (Iterator iterator = exams.iterator(); iterator.hasNext();){
Exam exam = (Exam)iterator.next();%>
<option value="<%= exam.getId()%>"><%= exam.getName()%></option>
<%}}%></select></td>
そして、これは件名テーブルからその後の変更を行うための私のコードです:
<td width="130"> <select name="txtSubject" id="SubjectId">
<option value="0">[Select Subject]</option>
<%Long l = new Long(0L);
if (subjects != null && !subjects.isEmpty()){
// instance.setSelectedExamId(Long.valueOf(subjectIdString));
// exams = (Exam)exams.getRecordById(Exam.class, Long.valueOf(subjectIdString));
for (Iterator iterator = exams.iterator(); iterator.hasNext();)
{
Exam exam = (Exam)iterator.next();
Subject subject;
subject = (Subject)ExamPrepValidationServlet.examService.getRecordById(Exam.class, l);
%><option value="<%= subject.getId()%>"><%= subject.getName()%></option>
<%}}%>
</select></td>
私が正しい方向に進んでいるかどうかはわかりませんが、誰かが助けに来てください。ありがとう