Validar Rut con JavaScript
Espero sea de su utilidad el método que les presento a continuación…
function ValidaRut(cRut) { cRut = cRut.replace(/[\.-]/g, ""); cRut = cRut.toUpperCase(); var patt = /^\d{1,8}[0-9K]$/; var ok = patt.test(cRut); var cStr = cRut.slice(0, -1); var cDig = cRut.slice(-1); var nSum = 0; var nVal = 0; var cVal = ""; if (ok) { for (nMul = 2; cStr != ""; nMul = (nMul == 7) ? 2 : nMul + 1) { nSum += Number(cStr.slice(-1)) * nMul; cStr = cStr.slice(0, -1); } nVal = 11 - (nSum % 11); switch (nVal) { case 11: cVal = "0"; break; case 10: cVal = "K"; break; default: cVal = nVal.toString(); } ok = cVal == cDig; } return ok; }