C'est ce que j'ai essayé jusqu'ici mais toujours rien n'a changé. Je ne sais pas par où commencer, peut-être que quelqu'un de professionnel peut m'aider à passer au travers. Ceci est à des fins de validation.Comment montrer si la date est invalide en javascript
code:
$(function(){
var len = $('#groupContainer > div').length;
var arr = [];
for(var i=0; i < len; i++){
var number = $('#number_' + [i + 1]);
var date = $('#date_' + [i + 1]);
var count = i + 1;
var message ="";
console.log(number)
var a = number.map(function(){
return this.value;
});
var b = date.map(function(){
return this.value;
});
var newObj = {number: a[0], date: b[0]}
arr.push(newObj);
}
var messages={};
var message="";
for(var c = 0; c < arr.length; c++)
{
var groupMessage=false;
for(var d in arr[c])
{
if(arr[c].hasOwnProperty(d))
{
if(arr[c][d] == "")
{
if(messages[d]==undefined) {
messages[d]={groups:[]};
}
messages[d].groups.push(c+1);
}
}
}
}
var lastgroup=""
for(i in messages){
m = messages[i];
var date = $('#date_' + i);
console.log(date)
if(m.groups.join(",")==lastgroup) {
message = message.replace("Group "+m.groups.join(",")+" ","Group "+m.groups.join(",")+":\n");
if(m == "Date" && date.length != 8)
{ message += i + ' is invalid!\n';
}
message+=i+" is required!\n";
}else {
message+="Group "+m.groups.join(",")+" "+i+" is required!\n";
}
lastgroup = m.groups.join(",");
}
if(message)
{
alert(message);
}
});
Si tous les champs n'est pas rempli show:
Group 1, 2 Number is required!
Group 1, 2 Date is required!
Date valide doit être mm/dd/yy
Et si la date n'est pas vraiment une date:
Group 1, 2 Date is invalid.
Et si l'une des entrées est invalide.
Group 2 Date is invalid.
Si tout le champ est rempli, ne faites rien.
vous ne l'avez pas expliqué comment vous envisagez de valider les dates. –
Je pense que vous pourriez mettre en place un problème plus petit mais bien défini similaire à ce que vous venez de poster. Et alors vous le résoudriez beaucoup plus facilement. Le code ci-dessus est juste un gâchis pour toute personne qui n'en sait pas assez sur votre tâche. – Microfed