Bonjour tout le monde,

J'ai un souci avec la d�rivation de la validation jquery dans un site MVC avec Entiry Framework CodeFirst.

Je veux faire saisir une date appartenant � un intervalle de dates, donc je cherche � d�river la fonction range pour qu'elle puisse s'adresser aux intervalles de dates.

J'ai cr�� dans le r�pertoire Scripts un fichier Extend.js contenant ceci :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
jQuery.extend(jQuery.validator.methods, {
    date: function (value, element) {
        return this.optional(element) || jQuery.global.parseDate(value) != null;
    },
    number: function (value, element) {
         return this.optional(element) || !isNaN(jQuery.global.parseFloat(value));
    },
  // http://docs.jquery.com/Plugins/Validation/Methods/range
  range: function (value, element, param) {
      alert('Extend.js');
      if (element.attributes["type"].value == "datetime") {
          var DateValue = new Date(value);
          param[0] = new Date(element.attributes["data-val-range-min"].value);
          param[1] = new Date(element.attributes["data-val-range-max"].value);
          value = DateValue;
      }
      return this.optional(element) || (value >= param[0] && value <= param[1]);
  }
 
});
 
function pipeau() {
    return "pipeau";
}
La fonction pipeau � la fin c'est parce que si je ne la mets pas, le module n'appara�t pas dans le d�bogueur de Firefox.

J'ai ouvert le fichier _layout.cshtml, et depuis l'explorateur de solutions j'ai fait glisser le Extend.js vers la surface de _layout.cshml, ce qui m'a fait appara�tre � la fin du <head> :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
<script src="/Scripts/Extend.js" type="text/javascript"></script>
J'ai aussi essay� en le mettant au d�but du <head>

J'ai une fonction range dans chacun des modules jquery de validation, j'ai ajout� dans chacune une instruction alert pour dire dans quelle module elle est, pour savoir ce qui s'ex�cute.

J'ai lanc� le site, je suis all� dans le champ d'une date qui doit appartenir � un intervalle et j'en suis sorti. Syst�matiquement c'est jquery.validate.js qui s'affiche, alors que je m'attends � voir Extend.js.

Donc, au choix : de quoi-t-est-ce ? qu'est-ce qui se passe ? quezaco ?

Normalement il faut d�composer la valeur de retour en deux bool�ens, un pour le minimum et un pour le maximum, mais si je ne m'abuse �a ne devrait pas emp�cher de voir s'afficher le bon nom de module.
Je soup�onne une erreur de syntaxe dans la d�claration de l'extension, pourtant j'ai eu l'impression de faire comme c'�tait dit.