javascript验证瑞典出生号
javascript validate swedish birthnumber
我试图对一个输入做一个简单的验证,该输入应该允许一个格式如下的数字:112233-1111,当我完成这一操作时,我会使其22不能超过12,33不能超过31,这就是我到目前为止得到的
var pn=document.forms.kontakt.pnr.value;
var spos=pn.indexOf("-");
var as= /^[0-9]{10}$/;
if (pn<11 || spos+4=pn.length || pn==null || pn=="")
{
alert ("Fyll i korrekt personnummer xxxxxx-xxxx");
kontakt.pnr.style.background = "red";
return false;
}
但它不起作用,我错过了什么吗?
这里有一些问题我想指出。首先,spos+4=pn.length
应该是spos+4==pn.length
(因为您在进行比较,所以两个值相等)。x
似乎没有定义,应该删除。永远不会使用正则表达式变量as
。
真的,你想做的是:
function calculate() {
//this matches 6 numbers followed by a ("-" or "+") followed by 4 more numbers
var as = /^[0-9]{6}[-+][0-9]{4}$/;
var pn=document.forms.kontakt.pnr.value;
if (as.test(pn)) {
var year = pn.substr(0,2);
var month = pn.substr(2,2);
var day = pn.substr(4,2);
//You probably need a better date checker, this is just an example
if (month <= 12 && day <= 30) {
document.body.innerHTML = 'great success!';
return;
}
}
document.body.innerHTML = 'Too bad!';
}
<form name="kontakt">
<input name="pnr" type="text" value="991222-1111"/>
<button type="button" onclick="calculate()">Calculate</button>
</form>
相关文章:
- 正在验证8个真/假复选框或复选框中的2个
- 借助asp.net验证或java脚本对多个文本进行验证
- jQuery自定义验证比较多个输入的序列
- 使用html中的外部javascript进行数据验证
- 如何使用jquery Validation验证Formspread
- jQuery在多个文本字段中验证出生日期
- 如何在日期选择器中给出出生日期验证
- 如何使用jquery验证器的日期月年三个文本框验证出生日期
- JavaScript 中的出生日期验证
- 在javascript中验证出生日期
- javascript验证瑞典出生号
- 如何使用Jquery.ui.datepicker.css验证出生日期和死亡日期文本框
- ASP.Net:三个下拉菜单和使用javascript的出生日期选择验证
- JavaScript出生日期验证
- 如何验证某人自出生之日起已超过18岁
- 从出生日期开始验证年龄
- 正在验证出生日期注册日历
- Bootstrap日期时间选择器中的出生日期验证
- 年龄和出生日期验证 JavaScript
- JavaScript表单验证,确保出生日期是4位数字长