在Javascript中验证(澳大利亚)电话号码 [英] Validate (Australian) Phone Numbers in Javascript

查看:85
本文介绍了在Javascript中验证(澳大利亚)电话号码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要验证澳大利亚的电话号码(例如 02 [3-9] \d {7} 07 [3-9] JavaScript中的\d {7} 04 [\d] {8} )。

I need to validate Australian phone numbers (e.g. 02[3-9]\d{7} or 07[3-9]\d{7} or 04[\d]{8}) in JavaScript.

要求:


  • 必须是10位数

  • 没有逗号

  • 没有破折号

  • no + in the

  • 必须从0开始

  • must be 10 digits
  • no commas
  • no dashes
  • no + in front
  • must begin with 0

目前我可以验证必填字段和电子邮件地址,但我想添加电话号码验证。

At the moment I can validate required fields and email address but I want to add phone number 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>

有人可以提供帮助吗?

推荐答案

这是一个正在推荐的正则表达式

Here is a regex that I would recomment

var pattern = /^0[0-8]\d{8}$/g;

因此输入必须从0开始,后跟一个数字,它必须是0到8之间的一个。然后它必须有8个以上的数字。

So input must start with 0, and followed by a digit and it must be one between 0-8. Then it must have 8 more digit numbers.

有效的电话号码示例:

0010293999(ok)

0010293999 (ok)

0110293999(ok)

0110293999 (ok)

0210293999(ok)

0210293999 (ok)

0910293999(不)

0910293999 (nope)

//实施

 ........
 var phoneNumber =document.forms["form3"]["phone"].value;
 var phonePattern = /^0[0-8]\d{8}$/g;
 //phone number is not valid. Please notice that you don't need to check if it's empty or null since Regex checks it for you anyways
 if (!phoneNumber.test(phonePattern))
   {
   alert("Please Enter your Phone or Mobile Number - Preferably Phone Number");
   return false;
   }
 ..........

- - 编辑

........
     var phoneNumber =document.forms["form3"]["phone"].value;
     var phonePattern = /^0[0-8]\d{8}$/g;
     //phone number is not valid. Please notice that you don't need to check if it's empty or null since Regex checks it for you anyways
     if (!phonePattern.test(phoneNumber))
       {
       alert("Please Enter your Phone or Mobile Number - Preferably Phone Number");
       return false;
       }
     ..........

这篇关于在Javascript中验证(澳大利亚)电话号码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆