JavaScript Datum der Geburt Validation
Funktioniert es jetzt. Dank sehr viel!
BEARBEITEN ich bin mit Dreamweaver und arbeiten auf HTML, ich glaube, ich wählte C# durch einen Fehler auf der post.
Ich versuche, fügen Sie eine Bestätigung, dass gibt eine Fehlermeldung, wenn Sie versuchen zu senden, wenn die D. O. B ist über 18 Jahre alt. Ich kann nicht damit es funktioniert, zusammen mit dem rest der Validierungen.
<form action="http://posttestserver.com/post.php" method="post">
<!--action="contact.php" name="form1" id="form1">
-->
<!-- stackoverflow.com, w3schools.com-->
First Name <input type="text" name="firstName" value="First Name" required/>
<br>
Last Name <input type="text" name="lastName" value="Last Name" required/>
<br>
Date of Birth <input type="date" name="dob" required/>
<br>
Address <input type="text" name="address" required/>
<br>
Mobile Number <input type="number" name="mobile" required/>
<br>
Email Address <input name="email" type="email" value="@." required id="email"/>
<br>
Re-enter Email Address <input name="emailConfirm" type="email" id="confemail" value="@." onblur="confirmEmail()"/>
<br>
<input type="submit" name="submit" value="Submit Data"/>
<br>
</form>
Ich habe versucht mehrere Male, um zu versuchen und zu arbeiten, aus der Datum - /Zeit-Validierungen von Stack Overflow, aber Sie können nicht scheinen, um zu arbeiten. Alle anderen Prüfungen arbeiten.
//JavaScript unten.
function imageClick(image)
{
var myImage = document.getElementById("myImage");
myImage.src = image.src;
thediv = document.getElementById("fullImage");
thediv.style.visibility = "visible";
};
function removeImage(thediv)
{
var myImage = document.getElementById("myImage");
myImage.src = "#";
thediv.style.visibility = "hidden";
};
function confirmEmail()
{
var email = document.getElementById("email").value
var confemail = document.getElementById("confemail").value
if(email != confemail)
{
alert('Email Not Matching!');
}
}
function AgeValidation(ageOfCustomer)
{
var date=saildates.split('/')[2];
var d = new Date();
var lipday=((d.getFullYear()-date)/4);
var month = d.getMonth()+1;
var day = d.getDate();
var output = day + '/' + month + '/' + d.getFullYear();
var age=((daydiff(parseDate(output), parseDate(saildates))-lipday)/365);
if(age > 18.000 || age== 18.000)
{
return true;
}
else
{
alert('Your age should be 18 or greater than 18 yrs!!!');
}
}
function parseDate(str)
{
var mdy = str.split('/')
return new Date(mdy[2], mdy[1]-1, mdy[0]);
}
function daydiff(first, second)
{
return (first-second)/(1000*60*60*24)
}
function SubmitForm()
{
document.forms['contactus'].action='http://posttestserver.com/post.php';
document.forms['contactus'].submit();
document.forms['contactus'].action='contact.php';
document.forms['contactus'].submit();
return true;
}
- 1. Sie sind sich nicht aufrufen
AgeValidation()
überall. 2. Sie sind vorbei, inageOfCustomer
aber dann versuchen, zu verwenden eine nicht definierte variable namenssaildate
. 3. Sie vermuten, dass es einen Wert und es ist mit "/" (Chrome liefert ein Datum-picker und der Wert mit dem Format "YYYY-MM-DD").
Du musst angemeldet sein, um einen Kommentar abzugeben.
Werfen Sie einen Blick auf diese jsfiddle. Die Funktion, die das Alter bestimmen ist, folgt.
Möglicherweise gibt es andere Probleme mit dem code, den Sie geben, aber das erste problem, das mir aufgefallen ist, dass die Funktion
AgeValidation
nicht verwenden, es ist argumentageOfCustomer
, und verwendet stattdessen die unbestimmtesaildates
variable.