Hello,
I try to do the following:
1 - I select combo box "carrera"
2 - Comobox "niveles" should be loaded with the data according to carrera selected in 1. Id is in "IdCarrera"

Idcarrera is always "" at this stage:

<TD><B>Carrera: </B></TD>
<TD>
<select name="carrera" id="carrera" onChange="fijaCarrera(carrera);">
<option value="0">-- Seleccione -- </option>
<%
if(listaCarreras != null) {
for(java.util.Iterator i = listaCarreras.iterator(); i.hasNext(); ) {
Carrera carreraList = (Carrera)i.next();
%><option value="<%=carreraList.getId().toString()%>" >
<%=carreraList.getDescripcion()%></option><%
Idcarrera = carreraList.getId().toString();
}
System.out.println("id carrera: "+Idcarrera);
listaNiveles = (ArrayList) hashNiveles.get(Idcarrera); HERE IS "" istead of my value
}
%>
</TD>
</TR>
<TR>

How can I fix it? Thanks in advance,

My complete code is as follows:

<%@page contentType="text/html"%>
<%@page import="java.util.ArrayList" %>
<%@page import="java.util.HashMap" %>
<%@page import="model.Carrera" %>
<%@page import="model.Departamento" %>
<%@page import="model.Nivel" %>

<%@ page language="java" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String pda = (String)request.getAttribute("pda");
if (pda == null){
pda = "false";
}
ArrayList listaCarreras = (ArrayList) request.getAttribute("listaCarreras");
ArrayList listaDepartamentos = (ArrayList) request.getAttribute("listaDepartamentos");
HashMap hashNiveles = (HashMap) request.getAttribute("listaNiveles");
String Idcarrera="";
ArrayList listaNiveles = null;
%>

<HTML>
<STYLE TYPE="text/css">@import url("estilo.css");</STYLE>
<HEAD>
<TITLE>Alta de cursos</TITLE>
</HEAD>
<SCRIPT LANGUAGE ='JavaScript'>
<!-- Ocultamos datos a los navegadores antiguos

/* Función para comprobar que se han introducido los datos. */
function comprobar(Nuevo)
{
if((Nuevo.descripcion.value == null)||
Nuevo.descripcion.value.length==0)
{
alert("Introduzca la descripcion");
Nuevo.descripcion.focus();
return false;
}

var v1 = document.getElementById('carrera').value;
var v2 = document.getElementById('idNivel').value;
var v3 = document.getElementById('idDepartamento').value;

if (v1 == null || v1 == "0")
{
alert("Seleccione la carrera");
return false;
}
if (v2 == null || v2 == "0")
{
alert("Seleccione el nivel");
return false;
}
if (v3 == null || v3 == "0")
{
alert("Seleccione el departamento");
return false;
}
return true;
}
function fijaCarrera(carrera)
{
Idcarrera = carrera.value;
alert("fija carrera " + Idcarrera);
}
// -->
</SCRIPT>
<BODY>
<h2>&nbsp;&nbsp;Alta de Cursos</h2><hr><br>
<font size="2">
<CENTER>
<FORM NAME='Reg' OnSubmit="return comprobar(Reg);"
ACTION="<%=path%>/altaCurso.action"
METHOD='POST' target="derecha">
<TABLE>

<TR>
<TD><B>Descripcion: </B></TD>
<TD><INPUT TYPE='text' NAME="descripcion" MAXLENGTH=45 SIZE=45></TD>
</TR>
<TR>
<TD><B>Carrera: </B></TD>
<TD>
<select name="carrera" id="carrera" onChange="fijaCarrera(carrera);">
<option value="0">-- Seleccione -- </option>
<%
if(listaCarreras != null) {
for(java.util.Iterator i = listaCarreras.iterator(); i.hasNext(); ) {
Carrera carreraList = (Carrera)i.next();
%><option value="<%=carreraList.getId().toString()%>" >
<%=carreraList.getDescripcion()%></option><%
Idcarrera = carreraList.getId().toString();
}
System.out.println("id carrera: "+Idcarrera);
listaNiveles = (ArrayList) hashNiveles.get(Idcarrera);
}
%>
</TD>
</TR>
<TR>
<TD><B>Nivel: </B></TD>
<TD>
<select name="idNivel" id="idNivel">
<option value="0">-- Seleccione -- </option>
<%

if(listaNiveles != null) {
for(java.util.Iterator i = listaNiveles.iterator(); i.hasNext(); ) {
Nivel nivelList = (Nivel)i.next();
%><option value="<%=nivelList.getId().toString() %>"><%=nivelList.getDescripcion()%></option><%
}
}
%>
</TD>
</TR>

<TR>
<TD><B>Departamento: </B></TD>
<TD>
<select name="idDepartamento" id="idDepartamento">
<option value="0">-- Seleccione -- </option>
<%
if(listaDepartamentos != null) {
for(java.util.Iterator i = listaDepartamentos.iterator(); i.hasNext(); ) {
Departamento depList = (Departamento)i.next();
%><option value="<%=depList.getId().toString()%>"><%=depList.getDescripcion()%></option><%
}
}
%>

</TD>
</TR>
<TR>
<TD><B>Activo:</B></TD>
<TD><INPUT TYPE='checkbox' NAME="activo" MAXLENGTH=10 SIZE=30></TD>
</TR>
<TR>
<TD COLSPAN=2 align="center">
<INPUT TYPE='hidden' NAME='method' VALUE='ConfirmarAlta'>
<INPUT TYPE='submit' VALUE='Solicitar Alta'>&nbsp;<INPUT TYPE='reset' VALUE='Limpiar'>
</TD>
</TR>
</TABLE>
</FORM>
</CENTER>
</font>
</BODY>
</HTML>