0

请使用此 Javascript 脚本从我的考试表中提取行。从考试表中提取的内容也应该拉出主题表。以下是我使用 Javascript 和 Java 尝试过的事情。

<script type="text/javascript">
function selRow(){document.getElementById('ExamId').onchange = function() {
document.getElementById('SubjectId').selectedIndex = this.selectedIndex;
}}</script>

所以我对这件事的意图是,当用户选择 ExamId 时,让它拉出属于 Exam 的 SubjectId,因为 Subject 在我的数据库中有 ExamFK。

这是我从数据库中提取 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>

我不知道我的方向是否正确,但请有人来帮助我。谢谢

4

0 回答 0