Letar efter ett script för fomulär koll av svenkt personummer allltå även med de fyra sissta sifforna.Formulärkotroll för Svenskt personumer
någon som kan tipsa om en site där man kan hitta ell dyl eller någon som kanske har ett liggande
mvh
pellepSv: Formulärkotroll för Svenskt personumer
function giltigtPersonNr(pnr)
{
var re = /^((18|19|20)?(\d{2}))\s*(\d{2})\s*(\d{2})\s*-?\s*(\d{4})$/;
var matches = pnr.match(re);
if(!matches)
return false;
var year = parseInt(matches[1]);
var month = parseInt(matches[4]);
var day = parseInt(matches[5]);
var extra = matches[6];
if(month == 0 || month > 12)
return false;
var max_month_lengths = Array(
31, 29, 31, 30, 31, 30,
31, 31, 30, 31, 30, 31
);
if(day == 0 || day > max_month_lengths[month-1])
return false;
var isLeapYear = function (year) {
return (year % 400 == 0)
|| (year % 4 == 0 && year % 100 != 0);
};
if(month == 2 && day == 29 && !isLeapYear(year))
return false;
var digits = matches[3] + matches[4] + matches[5] + matches[6];
var presum = "";
for(var i=0; i<10; i++)
presum += (1+(i+1)%2) * digits.charAt(i);
var sum = 0;
for(var i=0; i<presum.length; i++)
sum += parseInt(presum.charAt(i));
return (sum % 10 == 0);
}