【问题标题】:javascript form validation using test [closed]使用测试的javascript表单验证[关闭]
【发布时间】:2012-12-04 17:03:48
【问题描述】:

我最近学习了这段代码,但是这段代码没有像预期的那样工作。它是用于表单验证的

function username_validation(name){
    var valid_name = /^[a-zA-Z0-9_]{5,30}$/;
    if(!valid_name.test(name)) 
     {         
         return false; 
     } 
     else 
     { 
         return true;
     } 


}

【问题讨论】:

  • 这只是一个函数。你怎么称呼它?
  • 你想让它做什么?
  • 期望是什么?如果 name 长度在 5 到 30 个字符之间,全部为字母数字或下划线,则 Whis 将返回 true。
  • 什么是“预期”以及“不工作”是什么意思..???

标签: javascript validation forms


【解决方案1】:

您必须将此函数挂钩到事件侦听器。 喜欢:

<form onsubmit="username_validation(this.usernameTextfield.value);">

因此,每次提交特定表单时都会触发此功能。 你的功能没有问题。

行:

var valid_name = /^[a-zA-Z0-9_]{5,30}$/;

创建一个 RegExp 对象。

然后:

valid_name.test(name)

检查name 是否与valid_name 模式匹配。 RegExp 有一个布尔方法 test(s),如果给定字符串 s 与 RegExp 模式匹配,则返回 true

更好的写法是:

function validate(name) {
    var r=/^[a-zA-Z0-9_]{5,30}$/;
    return r.test(name);
}

希望对你有帮助...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-17
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多