Hola gracias por el enlace, ya lo habia resuelto con un script. aca lo comparto para otros usuarios. de una fecha ingresa calcula 3 meses hasta el mes18 y luego suma 6 meses para el mes 18 y 24 despues 12 meses para el mes 36 48 y 60. <html> <head> <script language="JavaScript"> function cerosIzq(sVal, nPos){ var sRes = sVal; for (var i = sVal.length; i < nPos; i++) sRes = "0" + sRes; return sRes; } function armaFecha(nDia, nMes, nAno){ var sRes = cerosIzq(String(nDia), 2); sRes = sRes + "/" + cerosIzq(String(nMes), 2); sRes = sRes + "/" + cerosIzq(String(nAno), 4); return sRes; } function sumaMes(nDia, nMes, nAno, nSum){ if (nSum >= 0){ for (var i = 0; i < Math.abs(nSum); i++){ if (nMes == 12){ nMes = 1; nAno += 1; } else nMes += 1; } } else { for (var i = 0; i < Math.abs(nSum); i++){ if (nMes == 1){ nMes = 12; nAno -= 1; } else nMes -= 1; } } return armaFecha(nDia, nMes, nAno); } function calcula(){ var sFc0 = document.frm.fecha0.value; // Se asume válida var nSum = parseInt(document.frm.meses.value); var nSum2 = parseInt(document.frm.meses2.value); var nSum3 = parseInt(document.frm.meses3.value); var sFc1 = sFc0; var sFc2 = sFc1; var sFc3 = sFc2; var sFc4 = sFc3; var sFc5 = sFc4; var sFc6 = sFc5; var sFc7 = sFc6; var sFc8 = sFc7; var sFc9 = sFc8; if (!isNaN(nSum)){ var nDia = parseInt(sFc0.substr(0, 2)); var nMes = parseInt(sFc0.substr(3, 2)); var nAno = parseInt(sFc0.substr(6, 4)); sFc1 = sumaMes(nDia, nMes, nAno, nSum); } if (!isNaN(nSum)){ var nDia = parseInt(sFc1.substr(0, 2)); var nMes = parseInt(sFc1.substr(3, 2)); var nAno = parseInt(sFc1.substr(6, 4)); sFc2 = sumaMes(nDia, nMes, nAno, nSum); } if (!isNaN(nSum)){ var nDia = parseInt(sFc2.substr(0, 2)); var nMes = parseInt(sFc2.substr(3, 2)); var nAno = parseInt(sFc2.substr(6, 4)); sFc3 = sumaMes(nDia, nMes, nAno, nSum); } if (!isNaN(nSum)){ var nDia = parseInt(sFc3.substr(0, 2)); var nMes = parseInt(sFc3.substr(3, 2)); var nAno = parseInt(sFc3.substr(6, 4)); sFc4 = sumaMes(nDia, nMes, nAno, nSum); } if (!isNaN(nSum)){ var nDia = parseInt(sFc4.substr(0, 2)); var nMes = parseInt(sFc4.substr(3, 2)); var nAno = parseInt(sFc4.substr(6, 4)); sFc5 = sumaMes(nDia, nMes, nAno, nSum2); } if (!isNaN(nSum)){ var nDia = parseInt(sFc5.substr(0, 2)); var nMes = parseInt(sFc5.substr(3, 2)); var nAno = parseInt(sFc5.substr(6, 4)); sFc6 = sumaMes(nDia, nMes, nAno, nSum2); } if (!isNaN(nSum)){ var nDia = parseInt(sFc6.substr(0, 2)); var nMes = parseInt(sFc6.substr(3, 2)); var nAno = parseInt(sFc6.substr(6, 4)); sFc7 = sumaMes(nDia, nMes, nAno, nSum3); } if (!isNaN(nSum)){ var nDia = parseInt(sFc7.substr(0, 2)); var nMes = parseInt(sFc7.substr(3, 2)); var nAno = parseInt(sFc7.substr(6, 4)); sFc8 = sumaMes(nDia, nMes, nAno, nSum3); } if (!isNaN(nSum)){ var nDia = parseInt(sFc8.substr(0, 2)); var nMes = parseInt(sFc8.substr(3, 2)); var nAno = parseInt(sFc8.substr(6, 4)); sFc9 = sumaMes(nDia, nMes, nAno, nSum3); } document.frm.fecha1.value = sFc1; document.frm.fecha2.value = sFc2; document.frm.fecha3.value = sFc3; document.frm.fecha4.value = sFc4; document.frm.fecha5.value = sFc5; document.frm.fecha6.value = sFc6; document.frm.fecha7.value = sFc7; document.frm.fecha8.value = sFc8; document.frm.fecha9.value = sFc9; } </script> </head> <body> <form name="frm"> <table border="0"> <tr> <td> <table border="1"> <tr> <td align="right"> Fecha inicial (dd/mm/aaaa) </td> <td><label> <input type="text" name="fecha0" id="fecha0"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900"> Meses </td> <td> <input type="text" name="meses" value="3"> </td> </tr> <tr> <td align="right" bgcolor="#009900">Meses</td> <td><label> <input name="meses2" type="text" id="meses2" value="6"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900">Meses</td> <td><label> <input name="meses3" type="text" id="meses3" value="12"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900"> Mes 3 </td> <td> <input name="fecha1" type="text" value="mes 3" readonly> </td> </tr> <tr> <td align="right" bgcolor="#009900">Mes 6</td> <td><label> <input type="text" name="fecha2" id="fecha2"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900">Mes 9</td> <td><label> <input type="text" name="fecha3" id="fecha3"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900">Mes 12</td> <td><label> <input type="text" name="fecha4" id="fecha4"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900">Mes 18</td> <td><label> <input type="text" name="fecha5" id="fecha5"> </label></td> </tr> <tr> <td align="right" bgcolor="#009900">Mes 24</td> <td><label> <input type="text" name="fecha6" id="fecha6"> </label></td> </tr> <tr> <td align="right">Mes 36</td> <td><label> <input type="text" name="fecha7" id="fecha7"> </label></td> </tr> <tr> <td align="right">Mes 48</td> <td><label> <input type="text" name="fecha8" id="fecha8"> </label></td> </tr> <tr> <td align="right">Mes 60</td> <td><label> <input type="text" name="fecha9" id="fecha9"> </label></td> </tr> </table> </td> </tr> <tr> <td align="center"> <input type="button" value="Calcular" onClick="calcula()"> </td> </tr> </table> </form> </body> </html>
el 8 ago. 11