如何验证输入字段以输入手机号码,该手机号码也应以“ 07”开头,如果有人用空格输入手机号码,则单击时应删除空格。 例如:07 xxxx xxxx onclick,应为07xxxxxxxx

现在,我使用html 5验证方法发出警告:

<input  type="text" name="mobile_number" required="" title="Number format should be 07xxxxxxxx" pattern="\d{10}">

但是此代码无法对其进行验证。 有人可以帮我验证一下吗

===============>>#1 票数:3

当我必须解决相同的问题时,我使用了Masked Input Plugin。

===============>>#2 票数:2 已采纳

您要求我使用简单的javascript进行操作。

   <!DOCTYPE html>
   <html>
  <body>



  <script>
 function myFunction()
 {
  var xyz=document.getElementById('mob_no').value.trim();

  if(xyz.substr(0,2)==='07')
  {

 var new_no= document.getElementById('mob_no').value.replace(/\s/g,"")
 alert("number after validations check is"+new_no);
 }
else
  {
alert("incorrect number");
 }
  }

 <input  type="text" id="mob_no" name="mobile_number" required="" title="Number format should be 07xxxxxxxx" onblur="myFunction()">
  </body>
 </html> 

随时提出任何问题,请回复是否有效。

===============>>#3 票数:1

您以07开头的电话号码的接受方式是

<input  type="text" name="mobile_number" required="" title="Number format should be 07xxxxxxxx" pattern="^07\d{8}$">

首先验证07 ,然后再接受以下8位数字,如下所示

pattern="^07\d{8}$" 

===============>>#4 票数:1

尼尔斯有正确的想法。

因此,只需附加一个单击处理程序或删除空格的行为即可。

var a = "07989   8989 8 8"; 
//substitute your element reference ala jQuery('input[name="mobile_number"]');
a = a.replace(/\s+/g,''); // strip the white space

if( /^07\d{8}$/.test(a) ){
  // passed test
}else{
  // did not pass, show error
 }

===============>>#5 票数:1

我相信,就像Niles所说的那样,您将希望使用模式pattern="^07\\d{8}$" ,这意味着,在英语String starting with "07" ending with any numerical sequence equaling 8 characters

此外,就像James指出的那样,请使用Javascript删除空格。 但是,我将添加一个间隔,以自动清除它们,以便用户了解输入的工作方式以进一步使用。

<script type="text/javascript">
    var inputElm = document.getElementById('phone_number_id_name'), // id="" name of element
        input = inputElm.value; 
    setInterval(function() { inputElm.value = input.replace(/\s+/g, ''); }, 100); // turncate white-space of input every 100ms
</script>

  ask by user3099298 translate from so

未解决问题?本站智能推荐: