Valider (Australien), les Numéros de Téléphone Javascript

J'ai besoin de valider Australien numéros de téléphone (par exemple, 02[3-9]\d{7} ou 07[3-9]\d{7} ou 04[\d]{8}) en JavaScript.

Exigences:

  • doit être de 10 chiffres
  • pas de virgules
  • pas de tirets
  • n + devant
  • doit commencer avec 0

Au moment où je peux valider les champs requis et adresse de courriel, mais je veux ajouter un numéro de téléphone de validation.

<html>
<head>
<script type="text/javascript">
function validateForm() {
var x=document.forms["form3"]["name"].value;
if (x==null || x=="") {
alert("Name must be filled out");
return false;
}
var s=document.forms["form3"]["phone"].value;
if (s==null || s=="") {
alert("Please Enter your Phone or Mobile Number - Preferably Phone Number");
return false;
}
var s=document.forms["form3"]["email"].value;
if (s==null || s=="") {
alert("Please Enter a valid email address");
return false;
}
var k=document.forms["form3"]["email"].value;
var atpos=k.indexOf("@");
var dotpos=k.lastIndexOf(".");
if (atpos<1 || dotpos<atpos+2 || dotpos+2>=k.length) {
alert("Email Address is Not Valid. Please provide your correct email address.");
return false;
}
}
</script>
</head> 
<body>
<form action="/thank-you.php" name="form3" method="post" onsubmit="return validateForm();" >
Your name* <input type="text" name="name" />    
Phone number* <input type="text" name="phone" />
Email* <input type="text" name="email" />
<input type="submit" value="sumbit" name="submit" class="button" onclick="javascript:return validateMyForm();" /><input type="reset" value="Reset" class="resetbutton" />
</form>
</body> 
</html>

Quelqu'un peut-il vous aider?

Notez que VOUS ne POUVEZ PAS COMPTER sur les données du client (même pas côté client des données validées)
Il est préférable d'avoir la validation côté client comme côté serveur validant parce que si la validation côté client échoue, il ne va pas à soumettre qui peut économiser de requête HTTP.
Et d'améliorer l'expérience utilisateur aussi que la (véritable) de l'utilisateur préfère savoir les erreurs à droite et puis, et non pas d'après le site a pris le temps de traiter la page et de rapporter les résultats.

OriginalL'auteur Webnerdoz | 2013-03-24