如何使用PhoneFormat.js检查输入的手机是固定电话还是移动电话?

时间:2014-11-19 10:28:54

标签: javascript

这是我的示例表单。我只需要一个文本框,我将在其中输入手机号码,我将从下拉框菜单中选择国家/地区,以便使用我使用http://www.phoneformat.com/的国家/地区验证手机号码。在这里,他们给出了一种方法isValidNumber(phno, country),用于验证国家/地区的电话号码(固定电话号码和手机号码)。

我的要求是我只需要允许手机号码,因为我使用了getNumberType(phno),但它没有给出任何结果,任何人都可以帮我检查输入的号码是固定号码还是手机号码?

<form name="fm" method="POST">

<input type="text" name="phno" id="phno"> <br>
<select id="Ultra"> 
     <option value="0">Select</option>
     <option value="IN">India</option>
     <option value="AU">Australia</option>
     <option value="CN">China</option>
     <option value="US"> America </option>
</select><br><br>

  <input type="submit" value="check" onclick="run()">

</form>


<script>
function run()
{

var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();

var phno = document.getElementById("phno").value;
alert('Phone number is '+phno);

 var res=isValidNumber(phno, country);

var country=document.getElementById("Ultra").value;

alert('Country code is '+country);

try{

    var res1=getNumberType(phno);

    alert('type of phone number is '+res1);

    }catch(e){

    alert(e);
}



alert("validation result is "+res);

}

</script>

2 个答案:

答案 0 :(得分:1)

这里我创建了自己的方法并包含在phoneFormat.js(http://www.phoneformat.com/)中,对于MOBILE,它将给出1,对于FIXED_LINE,它将给出0.

function isMobileNumber(phone,country){             / *

        Tests whether number the given number is Mobile or not.

        */

        //alert('hello isMobileNumber()');

        try {
            var phone = cleanPhone(phone);
            var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();
            var number = phoneUtil.parseAndKeepRawInput(phone, country);

           // alert('hello isMobileNumber'+phoneUtil.getNumberType(number));

            if(phoneUtil.getNumberType(number)==1){

                return true;
            }
            return false;

            } catch (e) {

                alert(e);
            //return false;

            }
}

答案 1 :(得分:0)

你需要去

var res1= phoneUtil.getNumberType(phno);

希望这会起作用