/*** 2010-7-13* He Chen* Love* JS Varios datos de formulario verificación*// **********************************************************************************************************************************************************************************************************************************************************************************************ida ********************************************************************************************************************************************************************************************** ********************************************************************************************************************************************************************************************** ********************************************************************************************************************************************************************************************** ********************************************************************************************************************************************************************************************** ********************************************************************************************************************************************************************************************** ********************************************************************************************************************************************************************************************** *********************************************************************************************************************************************************************************************** Verification of digital**********************************************************************************************************************************************************************************************************************//** * Check Si la cadena de entrada es todos los números* Entrada: Str String* return: verdadero o flase; Verdadero se expresa como un número*/function checkNum (str) {return str.match (// d/) == null;}/*** Verifique si la cadena de entrada es una entrada Decimal*: Str String* return: true o flase; Verdadero se expresa como un decimal*/function checkDecimal (str) {if (str.match (/^-?/d+(/./ d+)? $/g) == null) {return false; } else {return true; }}/*** Compruebe si la cadena de entrada es datos enteros* Entrada: Str String* return: true o flase; Verdadero se expresa como un decimal */function checkInteger (str) {if (str.match (/^[-+]?/d *$/) == null) {return false; } else {return true; }}/*********************************************************************************** // **************************************************************************************************************************************************************************************************ios *************************************************************************************************************************************************************************************************************************** * Check whether the input string is a Carácter* Entrada: Str String* return: verdadero o flase; Verdadero significa que todos los caracteres no contienen caracteres chinos*/function checkstr (str) {if (/=^/x00-/xfffont>/g.test(str)) {return false; } else {return true; }}/*** Compruebe si la cadena de entrada contiene caracteres chinos* Entrada: Str String* return: true o flase; Verdadero significa que los caracteres chinos*/function checkChinese (str) {if (escape (str) .indexof ("%u")! = -1) {return true; } else {return false; }}/*** Compruebe si el formato del buzón ingresado es correcto* Enter: STR String* return: verdadero o flase; Verdadero significa que el formato es correcto*/function checkEmail (str) {if (str.match (/[a-za-z0-9 _-]+[@] (/s*) (net | com | cn | org | cc | tv | [0-9] {1,3}) (/s*)/g) == null) {return false; } else {return true; }}/*** Compruebe si el número de teléfono móvil ingresado es correcto* Enter: STR String* return: verdadero o flase; Verdadero significa que el formato es correcto*/function checkMobilePhone (str) {if (str.match (/^(?: 13/d | 15 [89])-?/D {5} (/d {3} |/*{3}) $/) == null) {return false; } else {return true; }}/*** Compruebe si el número fijo ingresado es correcto* Enter: STR String* return: verdadero o flase; Verdadero significa que el formato es correcto*/function checktelephone (str) {if (str.match (/^(([0/+]/d {2,3}-)? (0/d {2,3})-) (/d {7,8}) (-(/d {3,}))? $/) {return false; } else {return true; }}/*** Compruebe si el formato de qq es correcto* Enter: str string* return: verdadero o flase; Verdadero significa que el formato es correcto*/function checkqq (str) {if (str.match (/^/d {5,10} $/) == null) {return false; } else {return true; }}/*** Compruebe si el número de identificación ingresado es correcto* Enter: STR String* return: true o flase; Verdadero significa que el formato es correcto*/function checkcard (str) {// 15 dígito de la tarjeta de identificación de identificación regular var arg1 =/^[1-9]/d {7} (0/d) | (1 [0-2])) ((0 | 1 | 2]/d) | 3 [0-1])/D {3} $/; // Tarjeta de identificación de 18 dígitos expresión regular var arg2 =/^[1-9]/d {5} [1-9]/d {3} (0/d) | (1 [0-2])) (([0 | 1 | 2]/d) | 3 [0-1]) ((/d {4}) |/d {3} [AZ]) $/;; if (str.match (arg1) == null && str.match (arg2) == null) {return false; } else {return true; }}/*** Compruebe si la dirección IP ingresada es correcta* Enter: STR String* return: true o flase; Verdadero significa formato correcto*/function checkip (str) {var arg = /^(/d{1,2}|1/d/d|2fice0-4font>/d|25=0-5fontgres)/.(/d{1,2}|1/d/d|2ance0-4font>/d|25§5font>// . (/d {1,2} | 1/d/d | 2 [0-4]/d | 25 [0-5])/. (/d {1,2} | 1/d/d | 2 [0-4]/d | 25 [0-5]) $/; if (str.match (arg) == null) {return false; } else {return true; }}/*** Compruebe si la dirección de URL de entrada es correcta* Entrada: Str String* return: true o flase; Verdadero significa que el formato es correcto*/function checkurl (str) {if (str.match (/(http [s]? | ftp) :: ///// [^//// }}/*** Compruebe si los caracteres de entrada tienen caracteres especiales* Entrada: Str String* return: true o flase; Verdadero significa que los caracteres especiales*se usan principalmente para la verificación al registrar información*/function checkQuote (str) {var elementos = new array ("~", "` ","! ","@","#"," $ ","%","^"," & ","*, "{", "}", "[", "," ("); items.push (":", ";", "" "," | "," // "," <","> ","? ","? "," << "," >> "," || "," // "); items.push ("administrador", "administradores", "administrador", "administrador", "administrador", "administrador del sistema"); items.push ("select", "Eliminar", "actualizar", "insertar", "crear", "soltar", "alter", "trancar"); str = str.tolowercase (); for (var i = 0; i <items.length; i ++) {if (str.indexof (elementos [i])> = 0) {return true; }} return false;}/****************************************************************************** // *************************************************** ********************************************************************************************************************************************************************************************************************** * Check whether the date format is correct* Enter: str string* return: verdadero o flase; Verdadero significa que el formato es correcto* Nota: El formato de fecha chino no se puede verificar aquí* Verifique la fecha corta (2007-06-05)*/Funcion CheckDate (Str) {// var valor = str.match (/((^((1 [8-9]/d {2}) | ([2-9]/d {3})) (-) (10 | 12 | 0? [13578]) ( -) (3 [01] | [12] [0-9] | 0? [1-9]) $) | (^((1 [8-9]/d {2}) | ([2-9]/d {3})) (-) (11 | 0? [469]) (-) (30 | [12] [0-9] | 0? [1-9]) $) | (^((1 [8-9]/d {2}) | ([2-9]/d {3})) (-) (0? 2) (-) (2 [0-8] | 1 [0-9] | 0? [2468] [048] 00) (-) (0? 2) (-) (29) $) | (^([2468] [048] 00) (-) (0? 2) (-) (29) $) | (^([[2468] [048] 00) (-0? 2) (-) (29) $) | (^(^(^ ([3579] [26] 00) (-) (0? 2) (-) (29) $) | (^([1] [89] [0] [48]) (-) (0? 2) (-) (29) $) | (( ^([2-9] [0-9] [0] [48]) (-) (0? 2) (-) (29) $) | (^([1] [89] [2468] [048]) (-) (0? 2) ( -) (29) $) | (^([2-9] [0-9] [2468] [048]) (-) (0? 2) (-) (29) $) | (^([1] [89] [13579] [26]) (-) (0? 2) (-) (29) $) | (^([2-9] [0-9] [13579] [26]) (-) (0? 2) (-) (29) $))/); Value var = str.match (/^(/d {1,4}) (-| //) (/d {1,2})/2 (/d {1,2}) $/); if (value == null) {return false; } else {var fecha = nueva fecha (valor [1], valor [3] - 1, valor [4]); return (date.getblyear () == valor [1] && (date.getMonth () + 1) == valor [3] && date.getDate () == valor [4]); }}/*** Compruebe si el formato de tiempo es correcto* Enter: STR String* return: verdadero o flase; Verdadero significa que el formato es correcto * Tiempo de verificación (10:57:10) */function checktime (str) {var value = str.match (/^(/d {1,2}) (::)? (/d {1,2})/2 (/d {1,2}) $/) if (valor == null) {return false; } else {if (valor [1]> 24 || valor [3]> 60 || valor [4]> 60) {return false} else {return true; }}}/*** Compruebe si el formato de hora completa es correcta* Enter: STR String* return: verdadero o flase; Verdadero significa que el formato es correcto * (2007-06-05 10:57:10) */function checkfulltime (str) {// var valor = str.match (/^(/d {1,4}) (-| //) (/d {1,2})/2 (/d {1,2}) (/d {1,2}): (/d {1,2}): (/d {1,2}) $/); valor var = str.match (/^(?: 19 | 20) [0-9] [0-9]-(? :(?: 0 [1-9]) | (?: 1 [0-2] [1-9]) | (?: [1-3] [0-1])) (?: (?: [0-2] [0-3]) | (?: [0-1] [0-9])): [0-5] [0-9]: [0-5] [0-9] $/); if (value == null) {return false; } else {// var fecha = nueva fecha (checkfulltime [1], checkfulltime [3] - 1, checkfulltime [4], checkfulltime [5], checkfulltime [6], checkfulltime [7]); // return (date.getTlyOrt () == valor [1] && (date.getmonth () + 1) == valor [3] && date.getDate () == valor [4] && date.gethours () == valor [5] && date.getminutes () == valor [6] & date.getSeconds () == valor [7]); devolver verdadero; }}/************************************************************************************** // ************************************************************ ********************************************************************************************************************************************************************************************************** * 15-digit encoding rules for ID card: ddddddd yymmdd xx p* ddddddd: código de región* yymmdd: fecha de nacimiento* xx: codificación de clase secuencial, no se puede determinar* p: género, el número impar es masculino, un número par es mujeres* <p />* 18 dígitos de codificación para la tarjeta de identificación: dddddddddddddddyyymmdd xxx y* ddddddddddddddddddigit reglas de codificación de identificación: dddddddddddddddyyymmdd xxx y* ddddddddddddddddddigit Reglas de codificación de identificación: yyyymmdd: Date of birth* xxx: Sequential class encoding, cannot be determined, odd number is male, even number is female* y: Verification code, this digit value can be obtained through the first 17 digits* <p /> * The weighting factor of the 18-digit number is (from right to left) Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2,1] * Bit de verificación y = [1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2] * Fórmula de cálculo de bit de verificación: y_p = mod (∑ (ai × wi), 11) * i es los 2 ... 18 dígitos del número de identificación de derecha a izquierda; Y_p es la posición de la matriz del código de verificación donde se encuentra el código de verificación del pie * */var wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 5, 8, 4, 2, 1]; // Pesaje factor de peso Valval IdCardValidate (idcard) {idcard = trim (idcard.replace ( / / g, "")); if (idcard.length == 15) {return isValidityBrithBy15IDCard (idcard); } else if (idcard.length == 18) {var a_idcard = idcard.split (""); // Obtenga la matriz de tarjeta de identificación if (isValidityBrithby18idCard (idcard) && istruevalidateCodeBy18idCard (a_idcard)) {return true; } else {return false; }} else {return false; }}/*** Determine si el último bit de verificación es correcto cuando el número de identificación es de 18 dígitos* @param a_idcard matriz de número de identificación* @return*/function istruevalidateCodeby18idCard (a_idcard) {var sum = 0; // Declarar la variable de suma ponderada if (a_idcard [17] .tolowercase () == 'x') {a_idcard [17] = 10; // reemplazar el código de verificación con el último bit x con 10 para operaciones posteriores convenientes} para (var i = 0; i <17; i ++) {sum+= wi [i] * a_idcard [i]; suma % 11; // dónde obtener el código de verificación if (a_idcard [17] == Validecode [valCodePosition]) {return true; } else {return false; }}/*** Determine si es un hombre o una mujer por tarjeta de identificación* @param idcard 15/18 dígito número de tarjeta de identificación* @return 'femenino' female, 'masculino'-male*/function maseorfemalbyidcard (idcard) {idcard = trim (idcard.replace (//g, "")); // procesar el número id del número id. Incluyendo espacios entre personajes. if (idcard.length == 15) {if (idcard.substring (14, 15) % 2 == 0) {return 'femenino'; } else {return 'masculino'; }} else if (idcard.length == 18) {if (idcard.substring (14, 17) % 2 == 0) {return 'femenino'; } else {return 'masculino'; }} else {return null; }}/*** Verifique que el cumpleaños en el número de identificación de 18 dígitos sea un cumpleaños válido* @param idcard de 18 dígitos de identificación de libros de libros* @return*/function isValidityBrithby18idCard (idcard18) {var año = idcard18.substring (6, 10); var mes = idcard18.substring (10, 12); var day = idcard18.substring (12, 14); var temp_date = nueva fecha (año, parsefloat (mes) - 1, parsefloat (día)); // use GetFulTyear () aquí para obtener el año para evitar el problema del error del milenio if (temp_date.getflyEar ()! = Parsefloat (año) || temp_date.getmonth ()! = Parsefloat (mes) - 1 || temp_date.getdate ()! = Parsefloat (day) {return false; } else {return true; }}/*** Verifique si el cumpleaños en el número de tarjeta de identificación de 15 dígitos es un cumpleaños válido* @param idcard15 cadena de tarjeta de identificación de libro de 15 dígitos* @return*/function isValidityBrithby15idCard (IDCARD15) {var año = idcard15.substring (6, 8); var mes = idcard15.substring (8, 10); var day = idcard15.substring (10, 12); var temp_date = nueva fecha (año, parsefloat (mes) - 1, parsefloat (día)); // Para su edad en su tarjeta de identificación anterior, no necesita considerar el problema del error del milenio y usar el método getyear () if (temp_date.getyear ()! = Parsefloat (año) || temp_date.getmonth ()! = Parsefloat (mes) - 1 || temp_date.getDate ()! = Parsefloat (day) {return False; } else {return true; }} // Eliminar la función de los espacios de cabezal y la cola Trim (Str) {return str.replace (/(^/s*) | (/s*$)/g, "");}Lo anterior es todo el contenido de este artículo. Para obtener más información sobre JavaScript, puede consultar: "Tutorial de referencia de JavaScript" y "Guía de estilo de código JavaScript". También espero que todos apoyen más a Wulin.com.