Skip to content

Instantly share code, notes, and snippets.

@pseudozach
Created July 23, 2015 18:23
Show Gist options
  • Save pseudozach/498c22a7e137966517d0 to your computer and use it in GitHub Desktop.
Save pseudozach/498c22a7e137966517d0 to your computer and use it in GitHub Desktop.
kimlik numarası validasyonu için jquery + js
// * TC. kimlik numaraları 11 basamaklı olup, sadece rakamlardan oluşur. İlk 9 rakam arasındaki formül 10.cu rakamı, ilk 10 rakam arasındaki formülasyon ise 11.ci rakamı oluşturur.
// * İlk rakam 0 olamaz.
// * 1,3,5,7 ve 9.cu hanelerin toplamının 7 ile çarpımından 2,4,6, ve 8. haneler çıkartıldığında geriye kalan sayının 10'a göre modu 10. haneyi verir. (çıkarma işleminden elde edilen sonucun 10'a bölümünden kalan)
// * 1,2,3,4,5,6,7,8,9 ve 10. sayıların toplamının 10'a göre modu (10'a bölümünden kalan) 11. rakamı sağlar.
if($('#inputTck').val().length != 11 || $('#inputTck').val().slice(0,1) == 0) {
window.alert('TC Kimlik No hatalı');
return false;
}
var tckon = 0;
var tcksub = 0;
for (var i=0; i < $('#inputTck').val().length - 2; i++) {
if( i % 2 == 0) {
tckon += parseInt($('#inputTck').val().charAt(i));
} else {
tcksub += parseInt($('#inputTck').val().charAt(i));
}
}
var tckdokuz = (7*tckon-tcksub) % 10;
var tckonbir = 0;
for (var i=0; i < $('#inputTck').val().length - 1; i++) {
tckonbir += parseInt($('#inputTck').val().charAt(i));
}
tckonbir = tckonbir % 10;
if($('#inputTck').val().charAt(9) != tckdokuz || $('#inputTck').val().charAt(10) != tckonbir ) {
window.alert('TC Kimlik No hatalı');
return false;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment