【问题标题】:jjquery code snippet to validate telephone number input用于验证电话号码输入的 jquery 代码段
【发布时间】:2016-01-15 00:54:25
【问题描述】:

所以我使用 Knack 和 Jquery 代码 sn-p 来扩展 Knack 功能集。我想验证输入到 Knack 表格中的电话号码。 Knack 提供了这个代码示例,但它并没有完全达到我想要的效果。

    // Your app's ViewID and FieldID will need updated.
$(document).on('knack-view-render.view_97', function(event, view, data) {

  $("#view_97 .kn-submit input[type=submit]").on("click", function() {
    // if this value in my form doesn't equal "SpecificValue" then prevent the form from submitting
    if ($("#view_2-field_29").val() != "SpecificValue") { 
     alert ("These are not the droids you are looking for.");
     return false;
    }
  })

})

基本上,我希望验证去掉(首选)或不接受(次佳!)空格,并坚持提供一个手机号码,它要么是“”(空格),要么是格式为 00000000000 的号码。 11 位数。

感谢您的帮助!

【问题讨论】:

  • 感谢 Tushar,看起来很完美!但是我可以用 != "SpecificValue") 代替 != /\s|\d{11}$/) 吗?
  • 我建议你直接在input元素上使用它作为pattern="\s|\d{11}"
  • 嗯,我无法直接访问输入元素。我大概可以通过使用代码来修改它,但不幸的是,我不能只是将该模式插入到 HTML 元素中。我将继续谷歌,看看我是否可以使用上面的代码 sn-p 作为指导来调整它。非常感谢。
  • 好的,使用testregex.test(string)
  • 好的,所以我已经这样做了$(document).on('knack-view-render.view_23', function(event, view, data) { $("#view_23.kn-submit input[type=submit]").on("click", function() { if ($("#view_23-field_32").val() =!isValidmobilenumber(mobilenumber)) { alert("These are not the droids you are looking for."); } return false; }) }) function isValidmobilenumber(mobilenumber) { var pattern = new RegExp(/\s|\d{11}/) return pattern.test(mobilenumber); },但显然参数的左侧是无效的。我觉得我快到了!有小费吗?谢谢@Tushar!

标签: javascript jquery regex


【解决方案1】:

去除数字中的任何非数字并取前 11:

$("#view_2-field_29").val().replace(/\D/g,"").slice(0,11)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-18
    • 2017-08-25
    相关资源
    最近更新 更多