Foros del Web » Programación para mayores de 30 ;) » .NET »

Validaciones de fechas en aspx.net c#

Estas en el tema de Validaciones de fechas en aspx.net c# en el foro de .NET en Foros del Web. Que tal, saludos a todos Primero que nada, soy nuevo en este foro, y es mi primera vez haciendo un post de este tipo, quiero ...
  #1 (permalink)  
Antiguo 14/11/2009, 11:51
 
Fecha de Ingreso: noviembre-2009
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
Validaciones de fechas en aspx.net c#

Que tal, saludos a todos

Primero que nada, soy nuevo en este foro, y es mi primera vez haciendo un post de este tipo, quiero aclarar que normalmente hubiese buscado mis dudas en internet pero en esta ocasión tengo demasiadas... soy algo nuevo programando en aspx.net espero no haya sido ya publicado algo igual, y si así fuese agradecería me mandaran un link, ya que yo no he podido encontrar.

Me encuentro realizando una página en la que voy a consultar una bitacora con base a 3 cosas, usuario, fecha inicial y fecha final, estoy teniendo problemas con lo de las fechas; primero que nada quiero que al abrir la pagina me muestre en la fecha 1 la fecha de ayer y en la fecha 2 la fecha de hoy, intenté poniendo en el Page_Load lo siguiente TextBox1.Text = DateTime.Now.ToShortDateString(); pero tengo la sisguientes dudas, no se como hacer para que me muestre la fecha de ayer. La fecha del TextBox antes de que le pusiera un valor predeterminado obtenia la fecha por medio de un calendario desplegable, y todo bien, pero cuando yo le pongo la fecha en el Page_Load ya no me toma la fecha que yo escojo desde el calendario, quiero que me muestre la fecha predeterminada y además la pueda editar desde el calendario y me tome la fecha que tomé del calendario.

Se que si pongo un input text después tendré que validar que la fecha que me haya puesto el usuario sea correcta, pero también quiero validar que la fecha 1 sea menor a la fecha 2, que la fecha 1 sea mayor a "12/11/2009" y que la fecha 2 sea menor a la fecha actual. También intenté poniendo la fecha en un label pero no me la actualiza ni la muestra cuando la selecciono en el calendario desplegable, así que no se cuál sería la mejor forma si en un input text o en un label.

Agradecería me dijeran como y cual seria la mejor forma de hacer esto, de antemano muchas gracias por el tiempo que se han tomado en leer... Saludos

pd. si tienen alguna duda (escribi algo enredado) pregunteme porfavor
  #2 (permalink)  
Antiguo 14/11/2009, 16:06
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Validaciones de fechas en aspx.net c#

Cita:
primero que nada quiero que al abrir la pagina me muestre en la fecha 1 la fecha de ayer y en la fecha 2 la fecha de hoy
Cita:
y que la fecha 2 sea menor a la fecha actual
Para qué le asignas primero la fecha actual si luego validarás que sea menor o quizá yo lo entendí mal :$
Eso de calendario despegable te refieres al que viene con asp.net??
Si es así puedo pasarte un código que de seguro te ayudará.
Baja el código de acá

Cualquier duda me avisas

PD: El código está en Vb 8, pero puedes convertirlo facilmente, es más las propiedades y clases usadas son las mismas para ambos lenguajes, solo cambia las llavecitas y los puntos y coma XD
__________________
Eduardo Peredo
Wigoin
  #3 (permalink)  
Antiguo 14/11/2009, 16:51
 
Fecha de Ingreso: noviembre-2009
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Validaciones de fechas en aspx.net c#

Muchas gracias por tu respuesta y tu código, me sirvió muchísimo... si, en el post me equivoqué, era validar que la fecha 2 fuese menor O igual a la fecha actual.
Con tu ejemplo puedo hacer lo que necesito pero para poder hacerlo tengo que poner el calendario en la misma página, el problema es que tengo el calendario como pop-up y éste automáticamente le pone la fecha al textbox, no se si lo puedo validar desde el calendario-pop-up o tenga que agregar un validador, pondre el codigo que uso para el calendario, espero sirva:

En la default.aspx tengo primero la funcion:

<script language="javascript" type="text/javascript">
function abrirCalendario(obj)
{
var url = 'calendarioPopUp.aspx?textbox=' + obj;
window.open(url,'cal','width=205,height=205,left=3 70,top=280,resizable=0,scrollbars=0');
}
</script>


Después en un image buton tengo:


<asp:ImageButton ID="ImageButton1" runat="server"
OnClientClick="abrirCalendario('TextBox1');" Height="25px"
ImageUrl="~/calendario.jpg" style="height: 25px; width: 25px" Width="25px"
AlternateText="Seleccionar fecha" />


y el código que tengo en el calendarioPopUp.aspx.cs es este:


protected void Calendar1_SelectionChanged1(object sender, EventArgs e)
{
string obj = Request.QueryString["textbox"];
if (obj != null)
{
string strScript = "<script>window.opener.document.getElementById ('" + obj + "').value = '" + Calendar1.SelectedDate.ToString("dd/MM/yyyy") + "';self.close()" +
"<" + "/script>";
this.RegisterClientScriptBlock("Calendar_ChangeDat e",strScript);
}


desde donde valido? el problema de validar desde calendarioPopUp.aspx.cs es que el usuario estando en default.aspx también puede cambiar la fecha de forma manual, tendría que validar en calendarioPopUp.aspx.cs y también en default.aspx? o como?

Muchas gracias de antemano

Última edición por arkantosan; 14/11/2009 a las 16:57
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:30.