A cópia do código é a seguinte:
// A página HTML deve ter uma caixa de entrada de entrada com ID Identity_Card, e um local para solicitar uma mensagem se o cartão de identificação com ID ipMessage estiver errado ou correto ou for solicitado.
<Cript>
// Verificação do cartão de identidade
$ (document) .ready (function () {
$ ("#identity_card"). alteração (function () {
var iDCard = $ (this) .val ();
CheckDate (IDCARD);
});
});
// cartão de identificação
Função CheckDate (IDCARD) {
var socialno = IDCARD;
if (socialno == "")
{
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("Digite o número de identificação não pode estar vazio!");
retornar (falso);
}
if (Socialno.Length! = 15 && Socialno.Length! = 18)
{
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("o formato do número de identificação de entrada está incorreto!");
retornar (falso);
}
Var Area = {11: "Pequim", 12: "Tianjin", 13: "Hebei", 14: "Shanxi", 15: "Interior Mongolia", 21: "Liaoning", 22: "Jilin", 23: " Heilongjiang ", 31:" Xangai ", 32:" Jiangsu ", 33:" Zhejiang ", 34:" Anhui ", 35:" Fujian ", 36:" Jiangxi ", 37:" Shandong ", 41:" Henan ":" , 42: "Hubei", 43: "Hunan", 44: "Guangdong", 45: "Guangxi", 46: "Hainan", 50: "Chongqing", 51: "Sichuan", 52: "Guizhou", 53 : "Yunnan", 54: "Tibet", 61: "Shaanxi", 62: "Gansu", 63: "Qinghai", 64: "Ningxia", 65: "Xinjiang", 71: "Taiwan", 81: " Hong Kong ", 82:" Macao ", 91:" estrangeiro "};
if (área [parseint (socialno.substr (0,2))] == null) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("Número de identificação inadequado (área ilegal)!");
retornar (falso);
}
if (socialno.length == 15)
{
padrão =/^/d {15} $/;
if (Pattern.exec (Socialno) == null) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("o número de identificação de 15 dígitos deve ser um número!");
retornar (falso);
}
Var nascimento = parseint ("19" + socialno.substr (6,2));
var mês = socialno.substr (8,2);
var dia = parseint (socialno.substr (10,2));
Switch (mês) {
Caso '01':
Caso '03':
Caso '05':
Caso '07':
Caso '08':
Caso '10':
Caso '12':
if (dia> 31) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
quebrar;
Caso '04':
Caso '06':
Caso '09':
Caso '11':
if (dia> 30) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
quebrar;
Caso '02':
if ((nascimento % 4 == 0 && Birth % 100! = 0) || Nascimento % 400 == 0) {
if (dia> 29) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
} outro {
if (dia> 28) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
}
quebrar;
padrão:
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
var nowYear = new Date (). getyear ();
if (agorayear - parseint (nascimento) <15 || agora - parseint (nascimento)> 100) {
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ('o número de identificação de entrada não está no formato correto!');
retornar falso;
}
$ ('#ipMessage'). html ('passa!');
retornar (true);
}
var wi = nova matriz (
7,9,10,5,8,4,2,1,6,
3,7,9,10,5,8,4,2,1
);
var lsum = 0;
var nnum = 0;
var nchecksum = 0;
para (i = 0; i <17; ++ i)
{
if (Socialno.Charat (i) <'0' || Socialno.Charat (i)> '9')
{
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("o formato do número de identificação de entrada está incorreto!");
retornar (falso);
}
outro
{
nnum = Socialno.Charat (i) - '0';
}
lsum += nnum * wi [i];
}
if (Socialno.Charat (17) == 'x' || Socialno.Charat (17) == 'x')
{
lsum += 10*Wi [17];
}
caso contrário, se (Socialno.Charat (17) <'0' || Socialno.Charat (17)> '9')
{
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("o formato do número de identificação de entrada está incorreto!");
retornar (falso);
}
outro
{
lsum += (Socialno.Charat (17) - '0') * Wi [17];
}
if ((lsum % 11) == 1)
{
$ ('#ipMessage'). html ('passa!');
retornar true;
}
outro
{
$ ('#ipMessage'). html ('O formato do número de identificação de entrada está incorreto, deve ser um número de identificação de 15 a 18 dígitos');
alerta ("o formato do número de identificação de entrada está incorreto!");
retornar (falso);
}
}
</script>