CPR validering virker ikke
Jeg er ikke for skrap til javascript. Jeg har gennemgået og prøvet at integrere fra de spørsmål, der er oprettet om det her på eksperten. Udfra det sidst oprettede http://www.eksperten.dk/spm/243145, blev det accepterede resultatat af testsiden som nedenstående, efter mit samsurium. Jeg kan bare ikke få det til at validere andet end hvis der ikke er 10 cifre.<html>
<head>
<title>CPRvalidering</title>
<script>
function validateCPR(cpr)
{
// requires: cpr no - format: DDMMYYCCCC
// CCCC: control digits
if(cpr.length!=10)
return false;
var d = cpr.substr(0,6);
if(!validateDate(d))
return false;
var w = 4*parseInt(cpr.substr(0,1),10) +3*parseInt(cpr.substr(1,1),10) +2*parseInt(cpr.substr(2,1),10) +7*parseInt(cpr.substr(3,1),10)
+6*parseInt(cpr.substr(4,1),10) +5*parseInt(cpr.substr(5,1),10) +4*parseInt(cpr.substr(6,1),10) +3*parseInt(cpr.substr(7,1),10)
+2*parseInt(cpr.substr(8,1),10) +parseInt(cpr.substr(9,1),10);
if(w%11!=0)
return false;
return true;
}
function isValidCPR(cpr)
{
if (!validateCPR(cpr)) {
window.event.returnValue = false;
window.event.cancelBubble = true;
alert("CPR-Nummer ikke validt");
}
}
//alert(isValidCPR('0123456789'));
</script>
</head>
<body>
<form method="post" name="f" onsubmit="isValidCPR(document.f.cpr.value)">
<input type="text" name="cpr">
<input type="submit" value="ok">
</form>
</body>
</html>
