2012-12-28 27 views
1

我有一個文本框,用戶需要輸入他/她的手機號碼。不過,我需要驗證前兩個數字(字符),以確保手機號碼格式正確(作爲驗證規則之一)。驗證文本字段的前2個字符

的手機號碼,需要先從以下任何2個位數:

44xxxxxx 55xxxxxx 65xxxxxx 78xxxxxx

誰能告訴我它是如何能確認前兩個字符數,並檢查他們是上面提到的選項之一?

編輯 這是我試過,但沒有奏效:

HTML

<input id="mob" name="mob" type="tel" placeholder="Enter your mobile number"> 
<a href="#" id="validate">Validate</a> 

JS

var mobile_prefix = $('#mob').subsubstr(0,2); 
$('#validate').click(function(){ 
if (mobile_prefix == 44||55||65||78) { 
alert('correct'); 
} 
else { 
    alert('incorrect'); 
} 
}); 

+2

您可以使用正則表達式或只是檢查,如果字符串以任何有效數字 –

+0

開始有很多方法可以做到這一點。你是否被允許使用第三方庫,或者你需要手工製作soln? – jharig23

+4

@ jharig23:第三方庫?保持簡單,除了JavaScript語言已有的東西外,您不需要其他任何東西。 –

回答

7

我認爲.match()有你在找什麼。只需刷上一些regular expressions即可。

if (StringFromSelectField.match(/^(44|55|65|78)/)) { 
    //do something 
} 
+0

這有效......我正在測試同樣的事情,當你張貼:)我添加了「結束錨」,以防萬一作者也想測試長度等。 –

1

使用substring from javascript

var FirstTwoLetters = TextFromYourInput.substring(0,2); 

然後你可以比較前兩個字母與你的模式。

+0

工作示例http://jsfiddle.net/6zAFG/4/ –

2

使用正則表達式將可能是最簡單的:

({phone number}).match(/^(44|55|65|78).*$/) 
0

輸入所以,第一個變量申請,善良的我的方式;) 首先檢查如果輸入不爲空,且有3個或更多的跡象。 最後是我使用的變量,以允許form.submit()。 如果你願意,你可以互取VAL()前加$.trim(postcode.val()) != ''

var postcode = $('#post_code'); 
     if(postcode.val() != '' && postcode.val().length > 2){ 
      var shortPostCode = postcode.val().substring(0,2); 
      var validPostCode = /^(EH|KY)/; 
      if(!shortPostCode.match(validPostCode)){ 
       postcode.after('<span class="error">Post code must start with EH</span>'); 
       dataValid = false; 
      } 
     }