2 votes

Valider le format de date en utilisant la méthode parseDate de jqueryUI

J'ai un exemple de fiddle où j'essaie de valider le format de la date comme suit

$('button').click(function() {
    $('#error').text('');
    var dateParse = $.datepicker.parseDate("dd/mm/yy", $("#datepicker").val());
    if (dateParse) {
      $('#error').text(dateParse);
    } else {
      $('#error').text('format de date invalide');
    }
  });

Mais l'erreur ne s'affiche pas. Qu'est-ce qui ne va pas dans le code?

3voto

Gvidas Points 1722

Erreur non affichée, car l'erreur se produit dans la fonction parseDate(), en raison de la date invalide. Vous devez d'abord gérer cette erreur. Voici jsFiddle

$(function() {
  $("#datepicker").datepicker({
    dateFormat: 'dd/mm/yy',
  });

  $('button').click(function() {
    $('#error').text('');
    try {
    var dateParse = $.datepicker.parseDate("dd/mm/yy", $("#datepicker").val());
    } catch (e) {}
    if (dateParse) {
      $('#error').text(dateParse);
    } else {
      $('#error').text('format de date invalide');
    }
  });
});

Date:

  Valider

Et je suggère d'afficher cette erreur au lieu de votre propre message:

$(function() {
  $("#datepicker").datepicker({
    dateFormat: 'dd/mm/yy',
  });

  $('button').click(function() {
    $('#error').text('');
    try {
    var dateParse = $.datepicker.parseDate("dd/mm/yy", $("#datepicker").val());
    if (dateParse) {
      $('#error').text(dateParse);
    }
    } catch (e) {$('#error').text(e);}
  });
});

Date:

  Valider

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X