需要年份范围验证脚本或jquery

Need year range validation script or jquery

本文关键字:脚本 jquery 验证 范围      更新时间:2023-09-26

我不是一个脚本作家,所以我有点残疾,当它涉及到这个东西的工作,但基本上我有一个现有的验证脚本注册表单,我试图添加一个输入与验证一个特定的年份范围(1946-1964)。目前,如果您没有正确输入表单问题,则会弹出一个对话框,提示您没有正确填写字段。

<script type="text/javascript">
function validateregform()
{
with (document.getElementById('frontregisterform'))
{
if (validate_required(document.getElementById('regname'),"Please fill in your full name!")==false)
{document.getElementById('regname').focus();return false;}  
if (validate_email(document.getElementById('regemail'),"Please fill in a valid email address")==false)
{document.getElementById('regemail').focus();return false;} 
if (validate_required(document.getElementById('pass'),"Please fill in your password")==false)
{document.getElementById('pass').focus();return false;}     
}
}
</script>

所以我需要做的是检查字段条目以确保它在1946年到1964年的年份范围内,然后如果不是,则简单地弹出一条消息说(注册仅限于1946年到1964年之间出生的人)。

这并不需要是一个严重级别的事情,因为我不需要阻止个人实际注册,如果他们不是在该年份范围内出生,则需要在稍后的过程中进行其他验证,以阻止他们使用。就在这一点上,我需要提醒注册人,该网站是为特定年龄组使用的。

对于此事的任何帮助,我将不胜感激。

这能帮到你吗?

if (document.getElementById('popopo').value < 1946 
|| document.getElementById('popopo').value > 1964) {
    alert("registration is restricted to those born between 1946 to 1964");
    return false;
}

[Edit]:不要忘记返回false,这样表单就不会被发送了

不要忘记接受答案或询问更多信息。尼古拉斯。

如果你有一个id为'year'的年份输入文本字段,请尝试将下面的块添加到验证函数中:

year=document.getElementById('year').value;
if(year<1946 || year>1964)
{
  alert("registration is restricted to those born between 1946 to 1964");
  return false;
}
无论如何,你应该考虑使用jquery ui日期选择器。它具有指定日期范围的选项。看看这个jquery ui页面。

使用jquery ui,它将像下面这样:

$(function() {
    $( "#datepicker" ).datepicker({ minDate: new Date(1946,1,1), maxDate: new Date(1964, 1, 1) });
});

使用上述方法,用户将被限制只能从该范围内选择日期。