簡體   English   中英

輸入模式 - 手機號碼 - 以特定數字開頭

[英]Input pattern - Mobile number - Start with a specific numbers

我嘗試將模式配置為能夠提交應以09開頭后跟“0-9”數字的手機號碼。 最大字符總數為 11。

樣品: 09 493432199 或09 267778595

<form action="/action_page.php">
<label for="username">Username:</label>
<input type="text" id="username" name="username" pattern="[09]+[0-9]" maxlength="11"><br><br>
<input type="submit" value="Submit">
</form>

你可以使用這個正則表達式

它會匹配

  • 當數字以09 AND開頭時

  • 當數字正好有11 位數字

    pattern = /09[0-9]{9}/

在這里試試https://regex101.com/r/Nl2c2y/3

 <form action="/action_page.php"> <label for="username">Username:</label> <input type="text" id="username" name="username" pattern="09[0-9]{9}" maxlength="11"><br><br> <input type="submit" value="Submit"> </form>

你的 html 看起來不錯

  <form action="/action_page.php">
    <label for="username">Username:</label>
    <input type="text" id="username" name="username" pattern="[0-9]" maxlength="11"><br><br>
    <input type="submit" value="Submit">
    </form>

你還需要像下面這樣的 JS:

var username_prefix = $('#username').subsubstr(0,2);
$('#validate').click(function(){
if (username_prefix == 09) {
alert('correct');
}
else {
    alert('incorrect');
}
});

使用具有固定位數加上特定位數的表達式。

如果您需要確切的 11 個字符,請使用09[0-9]{9}

在這個例子中09[0-9]{8,9}是有效的 0912345678 和 09123456789

 <form action="/action_page.php"> <label for="username">Username:</label> <input type="text" id="username" name="username" pattern="09[0-9]{8,9}" maxlength="11"><br><br> <input type="submit" value="Submit"> </form>

附帶說明一下,即使最常見的瀏覽器支持使用input pattern ,您也不應該只依賴客戶端驗證。 使用來自 PHP 后端的類似驗證來驗證信息(在這種情況下,添加了額外的^ (表達式開始)和$ (表達式結束)。

if (!preg_match("/^09[0-9]{9}$/",$_GET["username"])){
  // not valid
}
 <form action="/action_page.php">
    <label for="username">Username:</label>
    <input type="text" id="username" name="username" pattern="[0-9]" title="Zero is required" maxlength="11"><br><br>
    <input type="submit" value="Submit">
    </form>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM