Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2005, 15:44
Avatar de thejuve
thejuve
 
Fecha de Ingreso: abril-2003
Mensajes: 26
Antigüedad: 21 años, 11 meses
Puntos: 0
2 o 3 calendarios en una misma pagina

hola

tengo una pagina con un formulario en la que hay un campo de texto para ingresar una fecha, una liga al calendario que se muestra y al hacer clic en el dia seleccionado lo pone en la caja de texto. hasta aqui funciona perfecto, el problema es que necesito poner 2 o 3 campos de fecha y no funciona, pongo codigo a ver si alguien lo puede resolver.
===================================

<html>
<head>
<title>::: not_alta :::</title>

<script language="JavaScript">
<!--
var months = new Array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Deciembre");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("D", "L", "M", "M", "J", "V", "S");

today = new getToday();
var element_id;

function getDays(month, year)
{
// Test for leap year when February is selected.
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) ||
(0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}

function getToday()
{
// Generate today's date.
this.now = new Date();
this.year = this.now.getFullYear() ; // Returned year XXXX
this.month = this.now.getMonth();
this.day = this.now.getDate();
}


function newCalendar()
{
var parseYear = parseInt(document.all.year [document.all.year.selectedIndex].text);

var newCal = new Date(parseYear , document.all.month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;

today = new getToday(); // 1st call
if ((today.year == newCal.getFullYear() ) && (today.month == newCal.getMonth()))
day = today.day;
// Cache the calendar table's tBody section, dayList.
var tableCal = document.all.calendar.tBodies.dayList;

var intDaysInMonth =
getDays(newCal.getMonth(), newCal.getFullYear() );

for (var intWeek = 0; intWeek < tableCal.rows.length; intWeek++)
for (var intDay = 0;
intDay < tableCal.rows[intWeek].cells.length;
intDay++)
{
var cell = tableCal.rows[intWeek].cells[intDay];

// Start counting days.
if ((intDay == startDay) && (0 == daily))
daily = 1;

// Highlight the current day.
cell.style.color = (day == daily) ? "red" : "";
if(day == daily)
{
document.all.todayday.innerText= "Hoy: " + day + "/" +
(newCal.getMonth()+1) + "/" + newCal.getFullYear() ;
}
// Output the day number into the cell.
if ((daily > 0) && (daily <= intDaysInMonth))
cell.innerText = daily++;
else
cell.innerText = "";
}

}

function getTodayDay()
{
document.all[element_id].value = today.day + "/" + (today.month+1) +
"/" + today.year;
//document.all.calendar.style.visibility="hidden";
document.all.calendar.style.display="none";
document.all.year.selectedIndex =100;
document.all.month.selectedIndex = today.month;
}

function getDate()
{
// This code executes when the user clicks on a day
// in the calendar.
if ("TD" == event.srcElement.tagName)
// Test whether day is valid.
if ("" != event.srcElement.innerText)
{
var mn = document.all.month.selectedIndex+1;
var Year = document.all.year [document.all.year.selectedIndex].text;
document.all[element_id].value=event.srcElement.innerText+"/"+mn +"/" +Year;
//document.all.calendar.style.visibility="hidden";
document.all.calendar.style.display="none";
}
}

function GetBodyOffsetX(el_name, shift)
{
var x;
var y;
x = 0;
y = 0;

var elem = document.all[el_name];
do
{
x += elem.offsetLeft;
y += elem.offsetTop;
if (elem.tagName == "BODY")
break;
elem = elem.offsetParent;
} while (1 > 0);

shift[0] = x;
shift[1] = y;
return x;
}

function SetCalendarOnElement(el_name)
{
if (el_name=="")
el_name = element_id;
var shift = new Array(2);
GetBodyOffsetX(el_name, shift);
document.all.calendar.style.pixelLeft = shift[0]; // - document.all.calendar.offsetLeft;
document.all.calendar.style.pixelTop = shift[1] + 25 ;
}



function ShowCalendar(elem_name)
{
if (elem_name=="")
elem_name = element_id;

element_id = elem_name; // element_id is global variable
newCalendar();
SetCalendarOnElement(element_id);
//document.all.calendar.style.visibility = "visible";
document.all.calendar.style.display="inline";
}

function HideCalendar()
{
//document.all.calendar.style.visibility="hidden";
document.all.calendar.style.display="none";
}

function toggleCalendar(elem_name)
{
//if (document.all.calendar.style.visibility == "hidden")
if(document.all.calendar.style.display=="none")
ShowCalendar(elem_name);
else
HideCalendar();
}
-->
</script>

<style>
.today {COLOR: black; FONT-FAMILY: Geneva, Arial, Helvetica, sans-serif; FONT-SIZE: 10pt; FONT-WEIGHT: bold}
.days {COLOR: navy; FONT-FAMILY: Geneva, Arial, Helvetica, sans-serif; FONT-SIZE: 10pt; FONT-WEIGHT: bold; TEXT-ALIGN: center}
.dates {COLOR: black; FONT-FAMILY: Geneva, Arial, Helvetica, sans-serif; FONT-SIZE: 10pt}
</style>

</head>

<body>
<script Language="JavaScript">
function EscribirDesc(Texto)
{
var eb = document.all.editbar;
eb._editor.EscribirTexto(Texto)
}
function EscribirTit(Texto)
{
document.Myform.txtBDesc.value = Texto;
}
function EscribirImg(Texto)
{
document.Myform.ImgVtaRap.value = Texto;
}
</script>
<form name="Myform" method="post" action="paso_not.asp"><table width="431" border="0" cellspacing="0" cellpadding="0">
<!--DWLayoutTable-->
<tr class="titletop">
<td height="19" colspan="2" valign="top">Alta de Noticias </td>
</tr>
<tr class="titletop">
<td width="145" height="19">&nbsp;</td>
<td width="286">&nbsp;</td>
</tr>
<tr>
<td height="21" class="rowleft">Fecha</td>
<td valign="top" class="link_menuBold"><INPUT id=fecha name=fecha size=15 type="text">
<a href="JavaScript:;" onClick="toggleCalendar('fecha')">Calendario</a>

<TABLE bgColor=#ffffff border=1 cellPadding=0 cellSpacing=3 id=calendar style="DISPLAY: none; POSITION: absolute; Z-INDEX: 4">
<TBODY>
<TR>
<TD colSpan=7 vAlign=center>
<!-- Month combo box -->
<SELECT id=month onchange=newCalendar()>
<SCRIPT language=JavaScript>
// Output months into the document.
// Select current month.
for (var intLoop = 0; intLoop < months.length; intLoop++)
document.write("<OPTION " + (today.month == intLoop ? "Selected" : "") + ">" + months[intLoop]);
</SCRIPT>
</SELECT>
<!-- Year combo box -->
<SELECT id=year onchange=newCalendar()>
<SCRIPT language=JavaScript>
// Output years into the document.
// Select current year.
for (var intLoop = 1900; intLoop < 2028; intLoop++)
document.write("<OPTION " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop);
</SCRIPT>
</SELECT>

</TD>
</TR>



<TR class=days>
<!-- Generate column for each day. -->
<SCRIPT language=JavaScript>
// Output days.
for (var intLoop = 0; intLoop < days.length; intLoop++)
document.write("<TD>" + days[intLoop] + "</TD>");
</SCRIPT>
</TR>


<TBODY class=dates id=dayList onclick="getDate('')" vAlign=center>
<!-- Generate grid for individual days. -->
<SCRIPT language=JavaScript>
for (var intWeeks = 0; intWeeks < 6; intWeeks++)
{
document.write("<TR>");
for (var intDays = 0; intDays < days.length; intDays++)
document.write("<TD></TD>");
document.write("</TR>");
}
</SCRIPT>

<!-- Generate today day. --></TBODY>
<TBODY>
<TR>
<TD class=today colSpan=5 id=todayday onclick=getTodayDay()></TD>
<TD align=right colSpan=2><A href="javascript:HideCalendar();"><SPAN style="COLOR: black; FONT-SIZE: 10px"><B>Oculta</B></SPAN></A></TD>
</TR>
</TBODY>

</TABLE></td>
</tr>
<tr>
<td height="19">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td height="22" class="rowleft">Titulo de la Noticia </td>
<td valign="top">

<input type="text" name="Titulo" id="Titulo" onBlur="this.value=this.value.toUpperCase()"> </td>
</tr>
<tr>
<td height="19">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td height="262" class="rowleft">Noticia</td>
<td valign="top">
<textarea name="noticia" id="noticia" cols="50" rows="15" ></textarea></td>
</tr>
<tr>
<td height="36">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td height="38" valign="top" class="rowleft">Evento Activo Scroll HOME </td>
<td valign="top" class="link_menu"><input type="radio" name="Estado" value="Si">
Activo
<input type="radio" name="Estado" value="No" checked>
Inactivo</td>
</tr>
<tr>
<td height="20">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td height="24" colspan="2" valign="top" class="rowcenter"><div align="center">
<input name="BtnEnv" type="submit" id="BtnEnv" value="Guardar" >
</div></td>
</tr>
</table>
</form>


</body>
</html>