
13/03/2003, 12:06
|
| | Fecha de Ingreso: febrero-2003
Mensajes: 10
Antigüedad: 22 años Puntos: 0 | |
problema con los break alguien me podria dar una mano con este codigo. el problema es cuando compilo el codigo este me muestra un error con los break del switch. me dice que tienen que tener un label?????. la verdad no entiendo porque esta bien
Código:
<SCRIPT LANGUAGE="JavaScript">
var fuente_numeros=6; //Tamaño de la fuente
var color_fondo="blue"; //Color de fondo del calendario
var color_texto_normal="white"; //Color del texto del calendario
var color_dia_fiesta="red"; //Color de los días festivos
var meses=new Array ("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio",
"Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
var dias=new Array("Lun", "Mar", "Mie", "Jue", "Vie", "Sab", "Dom");
var nueva_ventana; //Ventana sobre la que se escribe el calendario
var mes_actual; //Mes actual del calendario
var ano_actual; //Año actual del calendario
//Funcion que transforma el dia de la semana para que el 0 sea el lunes y
//el 6 el domingo
function actualiza_dia_semana(dia){
if (dia > 0)
return dia-1;
else
return 6;
}
//Devuelve el numero de dias que tiene un mes sabiendo que Enero es mes 0,
//Febrero el 1, etc., y teniendo en cuenta los años bisiestos
function numero_de_dias(mes,ano){
if (mes==3 || mes==5 || mes==8 || mes==10)
return 30;
else if ((mes==1) && es_bisiesto(ano))
return 29;
else if (mes==1)
return 28;
else return 31;
}
//Determina si un año es bisiesto
function es_bisiesto(ano){
if (((ano%4==0) && ano%100!=0) || ano%400==0)
return true;
else return false;
}
//Devuelve el color asignado para los festivos(dia==6) o el correspondiente
//con el resto de los dias
function ver_color(dia){
if (dia==6)
return color_dia_fiesta;
else
return color_texto_normal;
}
//Asigna al elemento situado en el documento inicial la fecha seleccionada
//en la ventana de ayuda y cierra esta ventana
function finalizar(dia){
nueva_ventana.close();
window.document.formulario.Fecha.value=dia+"/"+(mes_actual+1)+"/"+ano_actual;
}
//Escribe en la ventana de ayuda el calendario correspondiente con un mes
//de un año determinado
function calendario(mes,ano){
var primer_dia=new Date(ano,mes,1);
var dia_inicial=actualiza_dia_semana(primer_dia.getDay());
var ultimo_dia=numero_de_dias(mes,ano);
with (nueva_ventana)
{
document.open();
document.writeln("<HTML>\n<BODY>\n<CENTER>");
//Escritura de los botones de avance o retroceso del mes o año
document.writeln("<FORM>");
document.writeln("<INPUT TYPE='BUTTON' VALUE='Mes +'"+
"onClick='window.opener.actualizar_calendario(2)'>");
document.writeln("<INPUT TYPE='BUTTON' VALUE='Mes -'"+
"onClick='window.opener.actualizar_calendario(3)'>");
document.writeln("<INPUT TYPE='BUTTON' VALUE='Ano +'"+
"onClick='window.opener.actualizar_calendario(4)'>");
document.writeln("<INPUT TYPE='BUTTON' VALUE='Ano -'"+
"onClick='window.opener.actualizar_calendario(5)'>");
document.writeln("<INPUT TYPE='BUTTON' VALUE='Cerrar'"+
"onClick='self.close()'>");
document.writeln("<FORM>\n<CENTER>");
//escritura de la tabla que representa el calendario
document.writeln ("<TABLE BORDER=2 ALIGN=CENTER>\n<TR>");
//escribir la cabecera que incluye el mes y el año del calendario
document.writeln("<TD ALIGN=CENTER COLSPAN=7 BGCOLOR="+color_fondo+">"+
"<FONT SIZE="+fuente_numeros+" COLOR="+color_texto_normal+"> "+meses[mes]+" "+ano+
"</FONT></TD>\n</TR>");
//escribir la cabecera que indica los dias de la semana
for (var i=0;i<7; i++){
document.writeln("<TD ALIGN=CENTER BGCOLOR="+color_fondo+">"+
"<FONT SIZE=3 COLOR="+color_texto_normal+">"+
dias[i]+"</FONT></TD>");
document.write("</TR>\n<TR>");
//escribir los dias del mes
contador_de_dias=1;
primera=true;
while (contador_de_dias<=ultimo_dia){
for (i=0;i<7;i++)
if ((i<dia_inicial && primera) || contador_de_dias>ultimo_dia)
document.writeln("<TD ALIGN=CENTER><FONT SIZE=" +fuente_numeros+
"COLOR="+color_texto_normal+
"> </FONT></TD>");
else{
var texto=ver_color(i);
document.writeln("<TD ALIGN=CENTER BGCOLOR="+color_fondo+">"+
"<A HREF='javascript:window.opener.finalizar("+contador_de_dias+")'>"+"<FONT SIZE="+
fuente_nuemros+" COLOR="+texto+">"+contador_de_dias+
"</FONT></A></TD>");
contador_de_dias++;
}
primera=false;
document.writeln ("</TR>\n<TR>");
}
document.writeln("</TR>\n</TABLE>\n</HTML>");
document.close();
}
}
// Abre la ventana de ayuda. Actualiza las variables que indican el mes y el año
// actual y escribe el calendario correspondiente con estos ultimos valores
function actualizar_calendario(valor){
nueva_ventana=open("","miventana","height=390,width=320,left=330,top=130,alwaysRaised=yes");
switch (valor){
case 1: //mes y año actuales
var hoy=newDate();
mes_actual=hoy.getMonth();
ano_actual=hoy.getYear();
break;
case 2: //mes siguiente
if ((mes_actual + 1)/12 == 1){
ano_actual++;
mes_actual=0;
}
else
mes_actual++;
break;
case 3: // mes anterior
if ((mes_actual-1)==-1){
ano_actual--:
mes_actual=11;
}
else
mes_actual--;
break;
case 4: // año siguiente
ano_actual++;
break;
case 5: // año anterior
ano_actual--;
break;
}
calendario(mes_actual,ano_actual);
}
</SCRIPT>
Última edición por andreslosada; 13/03/2003 a las 12:29 |