【问题标题】:validating input age with moment.js使用 moment.js 验证输入年龄
【发布时间】:2014-03-29 04:29:43
【问题描述】:

我正在使用 Moment.js 来验证年龄是否超过 18 岁。

我的代码:

function validate(date){
var eighteenYearsAgo = moment().subtract("years", 18);
var birthday = moment(date);

if (!birthday.isValid()) {
    return "invalid date";    
}
else if (eighteenYearsAgo.isAfter(birthday)) {
    return "okay, you're good";    
}
else {
    return "sorry, no";    
}

}

我有意见

<input type="text" name"SocialSecurityNumber">

我如何将此脚本附加到输入,以便在每次有人离开输入字段时验证年龄? (模糊)

【问题讨论】:

  • onblur = "return validate(this.value;" ?尽管提前选择输入或表单并使用标准 addEventListener 连接它可能是更好的方法。
  • 嗨@BenjaminGruenbaum,能否请您提供一个工作示例,非常感谢!

标签: javascript jquery html momentjs


【解决方案1】:
<input type="text" name="SocialSecurityNumber" onblur="return validate(this.value);" />

就个人而言,我使用 jquery 验证器并制作了这种方法:

$.validator.addMethod("minage", function(value,element,argument){
  var age = moment(value);
  var now = moment();
  return this.optional(element) || now.diff(age,'years') >= argument;
}, $.format("Applicant must be at least {0} years old.")); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-10
    • 2014-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多