Разрешить только первые два и последние два являются алфавитами, а остальные между ними являются числовыми (например, EE123456789IN) в текстовом поле - PullRequest
0 голосов
/ 05 мая 2019

Эй, я пытаюсь проверить текстовое поле для получения первых двух, а последние два символа являются алфавитами, а остальные числовыми между 13 длинами. Например, EE123456789IN. Как проверить это в текстовом поле, а также проверить это на кнопке отправки.

function Validate_Post() {
  var tb = document.getElementById("<%=txt_SpeedPost.ClientID%>").value;
  var a = tb.charAt(0);
  var b = tb.charAt(1);
  var c = tb.charAt(11);
  var d = tb.charAt(12);

  if ((a != 'E' && b != 'E') || (c != 'I' && d != 'N') || d != 'N') {
    alert("Invalid Speed Post Ref. No The Speed Post Ref No must be like this EE123456789IN") enter code here
  }

  for (var i = 3; i < 11; i++) {
    if ((tb.charAt(i) >= 48 && tb.charAt(i) <= 57) || (tb.charAt(i) >= 96 && tb.charAt(i) <= 126)) {
      alert("Enter Number after EE e.g EE123456789IN")
    }
  }
  return true
}


<asp:Button ID="Btn_submit" runat="server" Text="SUBMIT" align="center" Width="168px " OnClick="Btn_submit_Click" OnClientClick="Validate_Post();"  style="font-weight: 700"/>

Я хочу получить такой результат, что текстовое поле должно проверяться, например, EE123456789IN, а максимальная длина должна быть 13, и текстовое поле принимает только этот тип ввода. если нет, то он покажет ошибку во время отправки. Вы можете помочь мне в этом.

Ответы [ 2 ]

2 голосов
/ 05 мая 2019

Я не знаю ASP.NET, но вы можете сделать это с чистым HTML без Javascript

<form action='/somewhere' method='post'>
  <input type='text' pattern='[A-Z]{2}\d{9}[A-Z]{2}' required />
  <input type='submit' />
</form>
0 голосов
/ 05 мая 2019

Пожалуйста, используйте приведенный ниже код и дайте мне знать, если у вас возникнут какие-либо проблемы или вам понадобятся какие-либо изменения.

  SpeedPost: 
  <asp:TextBoxID="txt_SpeedPost" runat="server" maxlength=13 />
  <asp:Button ID="Btn_submit" runat="server" Text="SUBMIT" align="center" Width="168" 
  OnClick="Btn_submit_Click" OnClientClick="return Validate_Post();"  style="font- 
  weight: 700"/>

  <script>
  function Validate_Post() {
   var tb = document.getElementById("<%=txt_SpeedPost.ClientID%>").value;
   var length = tb.length;
   var first2 = tb.substr(0, 2);
   var last2 = tb.substr(length - 2, length);
   //alert(first2 + '::' + last2);

    var isAlphabet = allLetter(first2+last2);
   //if(first2 != 'EE' || last2 != 'IN')
    if(!isAlphabet)
   {
     alert("Invalid Speed Post Ref. No The Speed Post Ref 
       No must be like this EE123456789IN"); 
     return false;
   }

   var centerLength = length - first2.length - last2.length;
   var centerChars = tb.substr(2, centerLength);
   //alert(centerChars);
   if (isNaN(centerChars)) 
   {
    // not a number
      alert('not a number');
      return false;
   }

   return true;
   }


   function allLetter(inputtxt)
   {
      var letters = /^[A-Za-z]+$/;
       if(inputtxt.match(letters))
       {
          return true;
        }
       else
        {
            return false;
         }
    }
  </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...