Bonjour,
j'utilise JqueryUI Datepicker pour afficher des beaux calendriers dans mes inputs date.
Le problème est que lorsque le formulaire n'est pas validé (postback) on revient dessus et les champs sont vides. Par contre en analysant le code HTML de retour j'ai bien "value=XX-XX-XXXX" dans les champs mais cette valeur n'est pas affichée dans les champs.
Voici un peu de code :
MasterPage :
Champs de la vue formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <script type="text/javascript"> $(function () { $(".datepicker").datepicker({ firstDay: 1 }); $(".datepicker").datepicker("option", "dateFormat", 'dd-mm-yy'); $(".datepicker").datepicker("option", "showButtonPanel", true); $(".datepicker").datepicker("option", "buttonImage", '../../Content/Images/calendar2.gif'); $(".datepicker").datepicker("option", "showOn", "both"); $(".datepicker").datepicker("option", "buttonImageOnly", true); }); </script>
Html du postback :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <tr> <td><%: Html.LabelFor(m => m.DateFinT)%></td> <td><%: Html.TextBoxFor(m => m.DateFinT, new { @class = "datepicker" })%> <%: Html.ValidationMessageFor(m => m.DateFinT, "*")%> </td> </tr>
(on remarque la value)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <tr> <td><label for="DateFinT">Date fin prévisionnelle</label></td> <td><input class="datepicker" data-val="true" data-val-regex="Format incorrect" data-val-regex-pattern="([0-9]{1,2})-([0-9]{1,2})-([0-9]{4})" data-val-required="Le champ Date fin pr&#233;visionnelle est requis." id="DateFinT" name="DateFinT" type="text" value="21-04-2011" /> <span class="field-validation-valid" data-valmsg-for="DateFinT" data-valmsg-replace="false">*</span> </td> </tr>
=> et lors du postback le champs n'est pas invalidé (absence de caractère).
J'ai pas mal googlé (apriori datepicker ne se recharge pas au postback) mais les réponses que j'ai trouvé portaient sur les webform.
Avez vous une idée ?
Merci par avance.
@+.
Partager