J'ai l'option case à cocher qui après que je l'ai cochée, je change la valeur d'un champ de saisie qui affiche uniquement un mois et une année. Dans le cas, la case à cocher n'est pas sélectionnée. L'utilisateur clique sur l'entrée et un outil datepicker donne la possibilité de choisir la date (mois/année). Avec la première option les valeurs ne sont pas affichées correctement, avec le second oui. Qu'est ce que je fais mal?définir une valeur avec jquery, supprime la liaison à ViewModel lorsque les données sont soumises
année Décocher à ce jour et en cliquant sur l'entrée à la place
Maintenant, si je vérifie la (année à ce jour) et afficher la valeur alors fin startDate endDate ont une valeur nulle .
Mon contrôleur est le suivant
[HttpPost, ValidateAntiForgeryToken]
public ActionResult Index(ManualRecViewModel vm)
Mon ViewModel a champ startDate et EndDate
public class ManualRecViewModel
{
public DateTime? startDate { get; set; }
public DateTime? endDate { get; set; }
}
et mon avis est
<div class="input-group">
<div>
@Html.CheckBox("year-to-date", false)
@Html.Label("Year to Date")
</div>
<div class="dates-filters">
<div>
@Html.Label("From:")
</div>
<div>
@Html.TextBoxFor(m => m.startDate, new { @readonly = "readonly" })
</div>
<div>
@Html.Label("To:")
</div>
<div>
@Html.TextBoxFor(m => m.endDate, new { @readonly = "readonly" })
</div>
</div>
</div>
J'ai un js qui définissent les valeurs l'entrée
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth();
$("#startDate").datepicker('setDate', new Date(year, 0, 1));
$("#endDate").datepicker('setDate', new Date(year, month, 1));
Avez-vous essayé d'inspecter la les valeurs passées dans votre contrôleur, en utilisant JS? Vous constaterez probablement que les valeurs de date finale ne sont pas valides et qu'un problème de liaison de modèle se produira. – G0dsquad
Je ne poste pas les valeurs avec js, les entrées sont dans un formulaire avec un bouton de soumission – Heinrich
Quelle est votre 'CultureInfo'? – Shyju