begin process at 2010 07 31 04:47:27
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Date/Heure

 > RECUPERER LA DATE D'UN CALENDAR OUVERT DANS UNE POPUP [DEBUTANT]

RECUPERER LA DATE D'UN CALENDAR OUVERT DANS UNE POPUP [DEBUTANT]


 Information sur la source

Note :
9,71 / 10 - par 7 personnes
9,71 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Date/Heure Source .NET ( DotNet ) Classé sous :calendrier, popup Niveau :Débutant Date de création :10/02/2005 Date de mise à jour :15/02/2005 21:39:40 Vu / téléchargé :26 853 / 2 049

Auteur : jesusonline

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (22)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Ce code permet simplement d'ouvrir un calendrier dans une popup, on clique sur une date, la popup se referme, et le textbox de la page d'origine se remplit avec la date selectionnés. Suite à un commentaire, j'ai mis un Comparevalidator plutot qu'un RegularExepressionValidator pour vérifier la date.  J'ai aussi rajouté un RequiredFieldValidator pour empecher une presence de date vide ;)

Ce petit bout de code m'a été inspiré suite à une question sur le forum, il n'y a rien de compliqué, mais ca peut aider beaucoup de débutant. je me sert d'un control calendar, j'ai modifié le style à partir des styles prédéfinis dans Visual Studio. J'ai pas fait de code-behind, pour que ce soit plus simple aux débutants.

Au debut je voulais faire ce code dans un custo control, c'est à dire dans une assembly (dll) mais je me suis dit que ce serait trop compliqué pour les debutants. Je ferais peut etre, ce meme code dans un control composite avec des templates etc... reservé aux personnes ayant déjà de bonne connaissance en .net.

Les deux fichiers de codes sont dans le zip, vous n'avez rien à configurer, juste à placer ces deux fichiers dans un repertoire IIS (par exemple c:/inetpub/wwwroot/testcalendar/) et ensuite chargé la page ChooseDate (http://localhost/testcalendar/chooseDate.aspx)

I l y a deux versions, une version qui ouvre une popup et une version qui ouvre un calendrier à l'interieur meme de la page, je sais qu'il doit y avoir des bugs, mais j'ai prefere ne pas complexfier plus le code, cette source ce veut pour les débutant

Source

  • 'ChooseDate.aspx (le nom n'a pas d'importance)
  • <%@ Page Language="vb" %>
  • <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  • <html>
  • <head>
  • <title>ChooseDate</title>
  • <script runat="server" language="vb">
  • Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
  • Dim Script As String
  • Script = "<script language=""javascript"" type=""text/javascript"">" & vbNewLine
  • Script &= " document.getElementById(""TextBoxDateInline"").value = """ & Calendar1.SelectedDate.ToShortDateString & """ ;" & vbNewLine
  • Script &= "</" & "script>"
  • Me.RegisterStartupScript("DateSelected", Script)
  • End Sub
  • Private Sub ButtonValidate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
  • 'Il est necessaire de valider la page, car la date n'est pas
  • 'obligatoirement valide lorsqu'elle arrive ici, en effet malgré
  • 'la presence d'un validator, si le client desactive javascript, la
  • 'verification ne sera pas effectué chez le client, il faut
  • 'l'effectuer sur le serveur via la méthode Validate de l'objet Page
  • 'Pour vérifier désactiver Javascript, et rentrait une date quelconque
  • Page.Validate()
  • If Page.IsValid Then
  • 'mais par précautions, si un utilisateur arrive à trouver une date
  • 'valide pour le validator et non par la réalité, mieux vaut mettre un try
  • Try
  • LblSelectedDate.Text = " Vous avez selectionné le " & DateTime.Parse(TextBoxDate.Text).ToLongDateString
  • Catch
  • LblSelectedDate.Text = "La date n'est pas valide"
  • End Try
  • Else
  • LblSelectedDate.Text = "La date n'est pas valide"
  • End If
  • End Sub
  • </script>
  • <script language="javascript" type="text/javascript">
  • function ShowCalendarPopup()
  • {
  • window.open("Calendar.aspx","Calendar","width=238, height=218, resizable=yes, toolbar=false, scrollbars=false, status=yes");
  • }
  • function ShowCalendarInline()
  • {
  • document.getElementById("CalendarInLine").style.display = "inline";
  • }
  • function HideCalendarInline()
  • {
  • document.getElementById("CalendarInLine").style.display = "none";
  • }
  • </script>
  • </head>
  • <body>
  • <form id="Form1" method="post" runat="server">
  • <h1>Version popup
  • </h1>
  • <p>Date : <asp:textbox id="TextBoxDate" runat="server" maxlength="11" tooltip="jj/mm/aaaa">31/01/1986</asp:textbox>
  • <a href="javascript:ShowCalendarPopup();">Afficher le calendrier</a>
  • <br>
  • <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ErrorMessage="Vous devez selectionner une date" ControlToValidate="TextBoxDate" Display="Dynamic"></asp:RequiredFieldValidator>
  • <asp:CompareValidator id="CompareValidator1" runat="server" ErrorMessage="La date n'est pas valide" ControlToValidate="TextBoxDate" Type="Date" Operator="DataTypeCheck" display="Dynamic"></asp:CompareValidator></p>
  • <p><asp:label id="LblSelectedDate" runat="server"></asp:label></p>
  • <p><asp:button id="ButtonValidate" runat="server" text="Valider" onclick="ButtonValidate_Click"></asp:button></p>
  • <p>
  • <hr>
  • <p></p>
  • <h1>Version inline (sans popup)</h1>
  • <p>Date : <asp:textbox id="TextBoxDateInline" runat="server" tooltip="jj/mm/aaaa" maxlength="11">31/01/1986</asp:textbox><a
  • href="javascript:ShowCalendarInline();">Afficher le calendrier</a> </p>
  • <p id="CalendarInLine" style="display:none">
  • <asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged" borderwidth="1px" backcolor="#FFFFCC" width="220px" daynameformat="Short" forecolor="#663399" height="200px" font-size="8pt" font-names="Verdana" bordercolor="#FFCC66" showgridlines="True" tooltip="Sélectionner une date">
  • <selectorstyle backcolor="#FFCC66">
  • </selectorstyle>
  • <nextprevstyle font-size="9pt" forecolor="#FFFFCC">
  • </nextprevstyle>
  • <dayheaderstyle height="1px" backcolor="#FFCC66">
  • </dayheaderstyle>
  • <selecteddaystyle font-bold="True" backcolor="#CCCCFF">
  • </selecteddaystyle>
  • <titlestyle font-size="9pt" font-bold="True" forecolor="#FFFFCC" backcolor="#990000">
  • </titlestyle>
  • <othermonthdaystyle backcolor="AliceBlue">
  • </othermonthdaystyle>
  • </asp:calendar>
  • <br/>
  • <a href="javascript:HideCalendarInline();">Cacher le calendrier</a>
  • </p>
  • <p> <br><asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" Display="Dynamic" ControlToValidate="TextBoxDate" ErrorMessage="Vous devez selectionner une date"></asp:RequiredFieldValidator><asp:CompareValidator id="CompareValidator2" runat="server" ControlToValidate="TextBoxDate" ErrorMessage="La date n'est pas valide" display="Dynamic" Operator="DataTypeCheck" Type="Date"></asp:CompareValidator></p>
  • <p><asp:label id="Label1" runat="server"></asp:label></p>
  • <p><asp:button id="Button1" onclick="ButtonValidate_Click" runat="server" text="Valider"></asp:button></p>
  • </form>
  • </body>
  • </html>
  • Calendar.aspx (le nom est important, car l'autre page l'appelle via la popup)
  • <%@ Page Language="vb" %>
  • <script language="vb" runat="server">
  • Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
  • Dim Script As String
  • Script = "<script language=""javascript"" type=""text/javascript"">" & vbNewLine
  • Script &= " window.opener.document.getElementById(""TextBoxDate"").value = """ & Calendar1.SelectedDate.ToShortDateString & """ ;" & vbNewLine
  • Script &= " window.close();</" & "script>"
  • Me.RegisterStartupScript("DateSelected", Script)
  • End Sub
  • </script>
  • <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  • <html>
  • <head>
  • <title>Calendrier</title>
  • </head>
  • <body>
  • <form id="Form1" method="post" runat="server">
  • <asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged" borderwidth="1px" backcolor="#FFFFCC" width="220px" daynameformat="Short" forecolor="#663399" height="200px" font-size="8pt" font-names="Verdana" bordercolor="#FFCC66" showgridlines="True" tooltip="Sélectionner une date">
  • <selectorstyle backcolor="#FFCC66">
  • </selectorstyle>
  • <nextprevstyle font-size="9pt" forecolor="#FFFFCC">
  • </nextprevstyle>
  • <dayheaderstyle height="1px" backcolor="#FFCC66">
  • </dayheaderstyle>
  • <selecteddaystyle font-bold="True" backcolor="#CCCCFF">
  • </selecteddaystyle>
  • <titlestyle font-size="9pt" font-bold="True" forecolor="#FFFFCC" backcolor="#990000">
  • </titlestyle>
  • <othermonthdaystyle backcolor="AliceBlue">
  • </othermonthdaystyle>
  • </asp:calendar>
  • </form>
  • </body>
  • </html>
'ChooseDate.aspx (le nom n'a pas d'importance)

<%@ Page Language="vb" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
  <head>
		<title>ChooseDate</title>
<script runat="server" language="vb">

    Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim Script As String
        Script = "<script language=""javascript"" type=""text/javascript"">" & vbNewLine
        Script &= "     document.getElementById(""TextBoxDateInline"").value = """ & Calendar1.SelectedDate.ToShortDateString & """ ;" & vbNewLine
        Script &= "</" & "script>"

        Me.RegisterStartupScript("DateSelected", Script)
    End Sub


    Private Sub ButtonValidate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        'Il est necessaire de valider la page, car la date n'est pas 
        'obligatoirement valide lorsqu'elle arrive ici, en effet malgré
        'la presence d'un validator, si le client desactive javascript, la 
        'verification ne sera pas effectué chez le client, il faut
        'l'effectuer sur le serveur via la méthode Validate de l'objet Page
        'Pour vérifier désactiver Javascript, et rentrait une date quelconque
        Page.Validate()
        If Page.IsValid Then
			'mais par précautions, si un utilisateur arrive à trouver une date
			'valide pour le validator et non par la réalité, mieux vaut mettre un try
			Try
				LblSelectedDate.Text = " Vous avez selectionné le " & DateTime.Parse(TextBoxDate.Text).ToLongDateString
			Catch
				LblSelectedDate.Text = "La date n'est pas valide"
			End Try
        Else
            LblSelectedDate.Text = "La date n'est pas valide"
       End If
	End Sub
</script>
		<script language="javascript" type="text/javascript">
			function ShowCalendarPopup() 
			{
				window.open("Calendar.aspx","Calendar","width=238, height=218, resizable=yes, toolbar=false, scrollbars=false, status=yes");
			}
			function ShowCalendarInline() 
			{
				document.getElementById("CalendarInLine").style.display = "inline";
			}
			function HideCalendarInline() 
			{
				document.getElementById("CalendarInLine").style.display = "none";
			}
	
		</script>
</head>
	<body>
	
		<form id="Form1" method="post" runat="server">
			<h1>Version popup
			</h1>
<p>Date : <asp:textbox id="TextBoxDate" runat="server" maxlength="11" tooltip="jj/mm/aaaa">31/01/1986</asp:textbox>
				<a href="javascript:ShowCalendarPopup();">Afficher le calendrier</a>
				<br>
				<asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ErrorMessage="Vous devez selectionner une date" ControlToValidate="TextBoxDate" Display="Dynamic"></asp:RequiredFieldValidator>
				<asp:CompareValidator id="CompareValidator1" runat="server" ErrorMessage="La date n'est pas valide" ControlToValidate="TextBoxDate" Type="Date" Operator="DataTypeCheck" display="Dynamic"></asp:CompareValidator></p>
			<p><asp:label id="LblSelectedDate" runat="server"></asp:label></p>
			<p><asp:button id="ButtonValidate" runat="server" text="Valider" onclick="ButtonValidate_Click"></asp:button></p>
<p>
<hr>

<p></p>
<h1>Version inline (sans popup)</h1>
<p>Date : <asp:textbox id="TextBoxDateInline" runat="server" tooltip="jj/mm/aaaa" maxlength="11">31/01/1986</asp:textbox><a 
href="javascript:ShowCalendarInline();">Afficher le calendrier</a> </p>
<p id="CalendarInLine" style="display:none">		
	<asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged" borderwidth="1px" backcolor="#FFFFCC" width="220px" daynameformat="Short" forecolor="#663399" height="200px" font-size="8pt" font-names="Verdana" bordercolor="#FFCC66" showgridlines="True" tooltip="Sélectionner une date">
				<selectorstyle backcolor="#FFCC66">
				</selectorstyle>
				<nextprevstyle font-size="9pt" forecolor="#FFFFCC">
				</nextprevstyle>
				<dayheaderstyle height="1px" backcolor="#FFCC66">
				</dayheaderstyle>
				<selecteddaystyle font-bold="True" backcolor="#CCCCFF">
				</selecteddaystyle>
				<titlestyle font-size="9pt" font-bold="True" forecolor="#FFFFCC" backcolor="#990000">
				</titlestyle>
				<othermonthdaystyle backcolor="AliceBlue">
				</othermonthdaystyle>
			</asp:calendar>
			<br/>
	<a href="javascript:HideCalendarInline();">Cacher le calendrier</a> 		

</p>
<p> <br><asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" Display="Dynamic" ControlToValidate="TextBoxDate" ErrorMessage="Vous devez selectionner une date"></asp:RequiredFieldValidator><asp:CompareValidator id="CompareValidator2" runat="server" ControlToValidate="TextBoxDate" ErrorMessage="La date n'est pas valide" display="Dynamic" Operator="DataTypeCheck" Type="Date"></asp:CompareValidator></p>
<p><asp:label id="Label1" runat="server"></asp:label></p>
<p><asp:button id="Button1" onclick="ButtonValidate_Click" runat="server" text="Valider"></asp:button></p>
		</form>
	</body>
</html>

Calendar.aspx (le nom est important, car l'autre page l'appelle via la popup)

<%@ Page Language="vb" %>

<script language="vb" runat="server">

    Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim Script As String
        Script = "<script language=""javascript"" type=""text/javascript"">" & vbNewLine
        Script &= "     window.opener.document.getElementById(""TextBoxDate"").value = """ & Calendar1.SelectedDate.ToShortDateString & """ ;" & vbNewLine
        Script &= "     window.close();</" & "script>"

        Me.RegisterStartupScript("DateSelected", Script)
    End Sub

</script>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
	<head>
		<title>Calendrier</title>
	</head>
	<body>

		<form id="Form1" method="post" runat="server">
			<asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged" borderwidth="1px" backcolor="#FFFFCC" width="220px" daynameformat="Short" forecolor="#663399" height="200px" font-size="8pt" font-names="Verdana" bordercolor="#FFCC66" showgridlines="True" tooltip="Sélectionner une date">
				<selectorstyle backcolor="#FFCC66">
				</selectorstyle>

				<nextprevstyle font-size="9pt" forecolor="#FFFFCC">
				</nextprevstyle>

				<dayheaderstyle height="1px" backcolor="#FFCC66">
				</dayheaderstyle>

				<selecteddaystyle font-bold="True" backcolor="#CCCCFF">
				</selecteddaystyle>

				<titlestyle font-size="9pt" font-bold="True" forecolor="#FFFFCC" backcolor="#990000">
				</titlestyle>

				<othermonthdaystyle backcolor="AliceBlue">
				</othermonthdaystyle>
			</asp:calendar>

		</form>

	</body>
</html>

 Conclusion

Dites moi ce que vous en pensez en bien ou en mal, c'est toujours bon d'avoir l'avis des autres et n'oubliez pas : une note fait toujours plaisir ;)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

10 février 2005 12:59:48 :
Ajout d'un RequiredFiledValidator Remplacement du RegularExpressionValidator pour un Comparevalidator
15 février 2005 21:39:41 :
Rajout de la possibilité de voir le calendrier directement dans la page

 Sources du même auteur

Source avec Zip Source .NET (Dotnet) UTILISATION DE LA MÉTHODE SORT ET SORTDIRECTION AVEC UN GRID...
Source .NET (Dotnet) RESPONSE.FILTER : MANIPULATION DU STREAM DE SORTIE ASP.NET
Source avec Zip Source .NET (Dotnet) OPTIMISATION DE LA SERIALISATION JSON POUR LES LIST<T>
Source avec Zip Source .NET (Dotnet) CRAWLABLELINKBUTTON : UPDATEPANEL ET RÉFÉRENCEMENT
Source .NET (Dotnet) POSTBACKCONTROL - COMMUNICATION CLIENT/SERVEUR AVEC LES UPDA...

 Sources de la même categorie

CONVERSION D'UNE DATE/HEURE STANDARD VERS DATE/HEURE CONFORM... par processus
CALCUL DE L'AGE D'UNE PERSONNE (ASP VBSCRIPT) par bluedemon
CONVERSION DE GMT À LOCAL ET DE LOCAL À GMT par revolt
Source avec Zip CALENDRIER DYNAMIQUE AVEC JOURS FERIES par label97
SAISIR DATE FR DANS MYSQL par jeckel

 Sources en rapport avec celle ci

Source avec une capture Source .NET (Dotnet) CALENDRIER POPUP ET MULTICONTROLES par nico5969
Source avec Zip GESTION PLANNING par Cpustack
Source avec Zip Source avec une capture Source .NET (Dotnet) UN CALENDRIER PLUS OU MOINS ABOUTI par lilippx
Source avec une capture Source .NET (Dotnet) CALENDAR POPUP CUSTOMISÉ POUR DEMI JOURNÉE par Coolpix08
Source avec Zip CALENDRIER par 2ni

Commentaires et avis

Commentaire de devvassili le 10/02/2005 08:50:20

Pour vérifier la date tu peux mettre un CompareValidator
Comme ControlToValidate : ton TextBox
Comme Operator : DataTypeCheck
CommeType : Date

Commentaire de Senynium X le 14/02/2005 10:53:17

Salut, c bien beau ...
Mais on pourrait faire plus simple. Tu connais les iframes ? On peut tout simplement charger une page dans un IFRAME qui se chargerait d'afficher le calendar.

Commentaire de Mauricet le 15/02/2005 19:13:17

Bonjour
Je trouve que c'est très bien
mais je voudrais que le calendrier ne soit pas bloqué dans le coin supérieur gauche
Que faut-il faire pour que le calendrier apparaisse , par exemple, dans le milieu de l'écran ?
Les IFrame, je ne connais pas mais j'aimerais
Merci
Maurice

Commentaire de jesusonline le 15/02/2005 21:44:57 administrateur CS

Suite au commentaires j'ai rajouté la possibilité d'afficher le calendrier dans la page sans popup.

Pour répondre à Senynium X bien sur que je connais les iframes :D mais j'aime pas, mieux vaut s'en passer.


Pour Mauricet, pour changer l'endroit ou apparait ta popup, tu peux modifier ca avec du javascript (www.javascriptfr.com)

Commentaire de Mauricet le 19/02/2005 11:14:03

Bonjour
J'ai essayé ton calendrier sur un site ASP anglais et alors le calendrier et la date reviens en anglais.
Que faut-il changer pour l'avoir en frnçais ?
Je débute
Merci
Maurice

Commentaire de jesusonline le 19/02/2005 11:33:51 administrateur CS

J'ai justement fait une source qui va t'aider pour ton problème. Il suffit de changer la culture du thread

'-------- En francais
Imports System.Globalization

Dim dtfFrance As DateTimeFormatInfo
Dim ci As New CultureInfo("fr-FR")
dtfFrance = ci.DateTimeFormat
LabelDate.Text = Now.ToString("D", dtfFrance)

tu met ca dans le global.asax, regarde la source pour mettre le calendrier suivant le client.

>> http://www.aspfr.com/code.aspx?ID=21203

Commentaire de Mauricet le 19/02/2005 11:52:08

Bonjour
Extra
Mais je ne vois pas mon global.asax
je cherche
j'ai néanmoins fait la modification dans Web config et j'ai le calendrier en français
Merci
Maurice

Commentaire de Jackboy le 13/03/2005 15:01:51

un ptit qqchose, sa serait bon de recuperer la date via le calendrier, dont ont a choisi ultérieurement ! Car si l'usager à choisi par exemple le 9 Juillet 2009, sa lui fait du chemin pour changer pour le 10 ;) Et pour ce qui est du iframe il y a encore bien plus simple, utilisation des div !

Commentaire de Nerolph le 13/04/2005 10:23:21

Je n'arrive pas à l'exécuter.
Ça doit venir du fait que c'est de l'aspx au lieu de l'asp.
Est-ce compatible asp ? Si oui comment je dois faire car j'ai déjà corrigé les erreurs que me dit IIS.

Merci.

Commentaire de Nerolph le 13/04/2005 10:26:21

Parce que c'est quand même un bonne source.
S.O.S. ! PLiz.

Commentaire de jesusonline le 14/04/2005 12:20:01 administrateur CS

aspx ca veut dire que c'est du .net donc il te faut la framework .net etc...

regarde sur les forums il y a plein de message t'expliquant comment installer asp.net

Commentaire de asp_shamai le 29/06/2005 16:22:33

salut Cyril,
j'ai admiré le code...c simple vraiment..mais je ne sais pas si t'as la version c#..ça m'interesse car moi je m'exerce avec le c#
merci..

Commentaire de jesusonline le 29/06/2005 16:42:12 administrateur CS

en C# y'a pas beaucoup de difference, j'ai trés peu de code ici ...

en gros traduit comme ca :

    Private void Calendar1_SelectionChanged(System.Object sender, System.EventArgs e)
    {
string script;
Script = "<script language=""javascript"" type=""text/javascript"">" +
" document.getElementById(""TextBoxDateInline"").value = """ + Calendar1.SelectedDate.ToShortDateString + """ ;" +
"</" + "script>"
this.RegisterStartupScript("DateSelected", Script);
    }
  
    Private void ButtonValidate_Click(System.Object sender, System.EventArgs e)
    {
        Page.Validate();
        If (Page.IsValid)
        {
try
{
LblSelectedDate.Text = " Vous avez selectionné le " + DateTime.Parse(TextBoxDate.Text).ToLongDateString();
}
catch (exception ex)
{
LblSelectedDate.Text = "La date n'est pas valide";
}
        
        }
        else
        {
LblSelectedDate.Text = "La date n'est pas valide";
}
}

mais si tu veux faire du .net entraine toi à lire du VB.net et du C# tu verras c'est les memes langages à 2 bricoles pret ...

Commentaire de asp_shamai le 29/06/2005 17:45:52

ok..merci pour le conseil..
en fait j'étais en train de chercher comment créer une petite fenêtre qui afficherait le calendar où l'user pourra cliquer sur une date pour quelle s'affiche dans un textbox..mais là je réussis pas encore malgré ton code exemple..

Commentaire de asp_shamai le 01/07/2005 19:13:02

salut à tous...
c'est juste pour préciser que le code marche parfaitement..j'ai retraduit en C# et ça donne un bon résultat..
mais j'ai voulu remplacer ton lien "afficher calendrier" par un bouton et là il renvoit une erreur.voilà le code du click bouton
<script runat="server">
void Click_OK(object sender, System.EventArgs e)
{
javascript:ShowCalendar();
}
</script>
tu vois le problème toi

merci cyril

Commentaire de Mia le 04/07/2005 15:01:08

Salut

Je trouve ton code très bien mais pour mon usage, j'ai besoin de faire appel à ce popup autant de fois que j'ai de textboxes dans ma page. Ils sont tous identifiés par un nom différent mais dans le code "calendar.aspx" tu fais directement référence à un nom de textbox "TextBoxDate". Comment utiliser calendar.aspx pour tous les textbox que j'ai sur ma page de base?
Merci d'avance.

ps: pour moi c'est en vb pas en C#

Mia

Commentaire de jesusonline le 05/07/2005 02:08:06 administrateur CS

Dans ton cas ca deviendrait bien plus compliqué, il faudra se servir un peu plus de javascript

par exemple à le place de ca

<a href="javascript:ShowCalendarPopup();">Afficher le calendrier</a>

tu auras ca

<a href="javascript:ShowCalendarPopup('<%=me.textboxDate.clientID%>');">Afficher le calendrier</a>

la fonction ShowCalendarPopup, deviendra

            function ShowCalendarPopup(id)
            {
                window.open("Calendar.aspx?id=" id,"Calendar","width=238, height=218, resizable=yes, toolbar=false, scrollbars=false, status=yes");
            }

dans le fichier calendar.aspx ca deviendra :

Calendar.aspx (le nom est important, car l'autre page l'appelle via la popup)
  
<%@ Page Language="vb" %>
  
<script language="vb" runat="server">
  
    Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim Script As String
        Script = "<script language=""javascript"" type=""text/javascript"">" & vbNewLine
        'verifier request.querystring
        Script &= " window.opener.document.getElementById(""" & request.querystring("id") & """).value = """ & Calendar1.SelectedDate.ToShortDateString & """ ;" & vbNewLine
        Script &= " window.close();</" & "script>"
  
        Me.RegisterStartupScript("DateSelected", Script)
    End Sub
  
</script>

mais attention en faisant ca, verifie request.querystring, met au moins un HTMLEncode

il y aura surement d'autres modifs à faire, mais voici le genre

Commentaire de Sardonnen le 25/10/2005 16:23:22

Est ce normal que sur ta version sans popup dés que tu changes de mois le calendrier disparait???
c'est un peu genant...
sinon impec pour le reste
merci
a+

Commentaire de babybutt le 23/01/2006 17:23:03


>Salut Cyril
>j'ai regardé ton code, et je sens qu'il va vraiment me servir merci beaucoup.
>
>par contre je voulais savoir pourquoi dans ta version sans popup lorsqu'on change de mois, le calendrier disparait ?
>
>comment pourrait-on y remédier.
>
>est ce que ça serait à cause de l'objet calendrier qui le compte comme un onchange.

Commentaire de jesusonline le 23/01/2006 17:48:08 administrateur CS

A mon avis c'est une histoire de postback :s mais j'ai pas le temps de regarder, faudrais voir pour sauvegarder le viewstate et ainsi à chaque postback réafficher le truc.

Bon courage :)

Commentaire de DigigtalDJ le 16/05/2007 12:09:46

Salut a tous,
Voila je suis entrain de developper en asp.net C# sur Web developer et jai un peu de mal a creer ce "calendrier-popup" ki m'aiderai a prendre une date selectionnée et la mettre dans un label.

C'est mon maitre de stage qui va pas etre content si jy arrive pas :s lol

merci de m'aider ca serai simpas ^^

Commentaire de francois_35 le 14/06/2007 17:51:49

moi aussi j'aimerai bien un cas concret du calendrier et du textbox. Je veux le faire en C#. J'ai regardé plusieurs code, mais c'est souvent en VB et j'arrive pas à l'adapter.
Merci d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Affichage d'un calendrier popup [ par Pepin21 ] Bonjour, Voil&#224;, j'utilise EW:CALENDARPOPUP pour afficher un calendrier qui me permet de saisir une date. Mon probl&#232;me est le suivant : Popup...récupérer une date d'un calendrier dans une popup en cliquant sur un bouton [ par asp_shamai ] salut &#224; tous...j'ai&nbsp; un probl&#232;me, j'ai voulu remplacer le lien "afficher calendrier" relatif au code publi&#233; sur "RECUPERER LA DATE Popup ( Parent / Child ) Rafraichir la dropdownlist sur le parent. [ par Tam13 ] Salut tout le monde. J ai une fenetre parent dans laquelle j ai une dropdownlist qui se rempli a partir d'une base de donn&#233;e ( des marques ).Si u via CDO et ASP, invitation sur calendrier Outlook ou exchange [ par ktastrof ] bonjour,je cherche un script me permettant d'envoyer une invitation Outlook 2003 ou echxange via ASP CDO avec &#233;l&#233;ments r&#233;pris d'un form button et popup [ par emna_bz ] Bonjour je travail avec asp.net +c#J'ai un champ dans mon site pour saisir le nom et un bouton qui permet de faire un traitement selon le text saisi d utiliser viewstate [ par emna_bz ] Bonjour Je travail avec asp.net et c#.J'ai besoin d'utiliser viewstate .Je vais vous expliquer mon probleme:*j'ai un champ text et un boutton si on cl fenetre popup [ par sorcier_sly ] Salut tout le monde !!Quelqu'un pourrait il me donner la syntaxe exacte pour l'ouverture d'une fenetre popup ?J'utilise le code suivant :Response.Writ fermeture popup [ par sorcier_sly ] Salut, Comment peut on fermer une fenetre popup ?? Est que ca marche avec window.close ?Pouvez vous me donnez la syntaxe exacte s'il vous plait ??? me Calendrier ouvert depuis un DropDownList object [ par akaii ] Bonjour,J'ai vu sur un site un DropDownList qui a comme &#233;l&#233;ment un calendrier o&#249; l'on peut choisir la date qui s'affiche dans le text d Popup et refresh [ par nounours21_6 ] Bonjour,j'ai fais un formulaire d'ajout d'&#233;v&#232;nementun &#233;v&#232;nement a une cat&#233;gorie,et&nbsp;si elle n'existe pas, j'ai fais un li


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales