javascript - 文本框中仅允许前两个和后两个为字母,中间其余为数字(例如 EE123456789IN)

标签 javascript c# jquery validation

嘿,我正在尝试验证一个文本框,以获取前两个和最后两个字符是字母,其余字符是长度为 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 并且文本框只接受这种输入。如果没有,那么在提交过程中会显示错误。你能帮我解决这个问题吗?

最佳答案

我不懂 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>

关于javascript - 文本框中仅允许前两个和后两个为字母,中间其余为数字(例如 EE123456789IN),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55991909/

相关文章:

javascript - 执行随机 css 更改

javascript - 使用 replace() 函数时 Jquery 代码中断

c# - 将内部类注入(inject) Azure WebJob 函数

javascript - 如何通过由另一个方法填充的方法访问对象的成员?

javascript - jquery轮播奇怪的动画

javascript - Angularjs 观察 ng-class apply

javascript - 动态创建的li点击事件不起作用jquery

c# - 如何从营业时间时段列表中禁用预订的时段

c# - 在开发期间管理多个应用程序配置文件

javascript - 主体标签下方的额外间隙/缓冲区(没有人能解决这个问题)