| |||
| rut es la cedula de identidad chilena por ejemplo 12.365.897-7 lo que yo necesito es verificar que el numero ingresado sea correcto eso se hace verificando el digito verificador en este caso 7 eso es ojala te haya quedado claro |
| |||
| aha....debe ser como el DNI (documento nacional de identidad) en españa. Ejemplo: 45876234-H)......que tambien tiene un algoritmo por el que se saca la letra del final (en nuestro caso una letra)... ToKaTa.
__________________ "Si pudieras volver.....¿.lo harias?" |
| ||||
| Hola elota, gracias por desburrarme... Aca te encontré un código de validación de RUT (chile), está en una discución en Programacion.com (http://www.programacion.com/foros/5/msg/13012/), es este:
Código:
No lo probe, pero en esa discución hablan de que operaciones que deben llevar a cabo para la comprobación.<html>
<head>
<script language="javascript">
<!--
// ****** Script by Cristian Basaez ******
function validar(formulario) {
var rut = formulario.rut.value;
var count = 0;
var count2 = 0;
var factor = 2;
var suma = 0;
var sum = 0;
var digito = 0;
count2 = rut.length - 1;
while(count < rut.length) {
sum = factor * (parseInt(rut.substr(count2,1)));
suma = suma + sum;
sum = 0;
count = count + 1;
count2 = count2 - 1;
factor = factor + 1;
if(factor > 7) {
factor=2;
}
}
digito = 11 - (suma % 11);
if (digito == 11) {
digito = 0;
}
if (digito == 10) {
digito = "k";
}
form.dig.value = digito;
}
//-->
</script>
</head>
<body onload="form.rut.focus(), form.rut.value='', form.dig.value=''" >
<center>
<form name="form">
<h2><b> Validar RUT </b></h2>
<input type="text" name="rut" size="9" maxlength="8"> - <input type="text" name="dig" size="1" maxlength="0"><br><br><br>
<input type="button" onclick="validar(this.form)" value="Validar Rut">
</form>
</center>
</body>
</html>
Espero que te sirva, saludos.... |
| |||
| Re: validar rut Yo lo modifiqué un poco..la idea es que funione en unsa sola caja de texto:
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Modificar Rut</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
<link href="estilos.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" type="text/javascript">
function ValRut(rutx)
{
var count = 0;
var count2 = 0;
var factor = 2;
var suma = 0;
var sum = 0;
var digito = 0;
var arrRut = rutx.split('-');
if(arrRut.length!=2)
{
document.getElementById('Verificacion').innerHTML=" ";
document.form1.Submit.disabled='disabled';
return false;
}
var rut = arrRut[0];
var dvIn = arrRut[1];
count2 = rut.length - 1;
while(count < rut.length)
{
sum = factor * (parseInt(rut.substr(count2,1)));
suma = suma + sum;
sum = 0;
count = count + 1;
count2 = count2 - 1;
factor = factor + 1;
if(factor > 7){factor=2;}
}
digito = 11 - (suma % 11);
if (digito == 11){digito = 0;}
if (digito == 10) {digito = "k";}
//form.dig.value = digito;
if(digito==dvIn)
{
document.getElementById('Verificacion').innerHTML="<span class='textoAzul'>Rut OK</span>";
document.form1.Submit.disabled='';
}
else
{
document.getElementById('Verificacion').innerHTML="<span class='TextoChicoDestacado'>Rut Erroneo</span>";
document.form1.Submit.disabled='disabled';
}
}
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#FBFBFB">
<tr>
<td class="TextoNormal"><div align="center" class="TituloChico">ingresar nuevo rut </div></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td align="center"><input name="NewRut" type="text" class="CampoTextoFecha" id="NewRut" onkeyup="ValRut(this.value);" value="" maxlength="10" />
<input type="submit" name="Submit" value="Guardar" disabled="disabled" />
<input type="button" name="Submit2" value="Cerrar" /></td>
</tr>
<tr>
<td align="center" id="Verificacion"> </td>
</tr>
</table>
</form>
</body>
</html>
|
| |||
| Re: validar rut
Código:
Para validar el rut en esta pequeña clase, debes hacerlo de la siguiente manera:var VALIDAR = {
alfanumerico: function(input){
var find = new RegExp(/^\w{1,}$/);
if(!find.test(input))return(false);
return true;
},
email: function(input){
input = input.replace(";",",");
var listcorreo = input.split(",");
for (i=0; i < listcorreo.length; i++)if( listcorreo[i].search(/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/ig) )return (false);
return true;
},
getDV: function(input){
var M=0,S=1;for(;input;input=Math.floor(input/10))
S=(S+input%10*(9-M++%6))%11;return S?S-1:'K';
},
rut: function(input){
var find = new RegExp(/^(\d{1,8})-([K|0-9])$/);
if(find.test(input)) {
var M=0,S=1,T=RegExp.$1;
for(;T;T=Math.floor(T/10))
S=(S+T%10*(9-M++%6))%11;
return ((S?S-1:'K') == RegExp.$2 ? true : false);
}else{
return false;
}
return true;
},
numero: function(input){
var find = new RegExp(/^(?:\+|-)?\d+\.\d*$/);
if(!find.test(input))return(false);
return true;
},
entero: function(input){
var find = new RegExp(/^(?:\+|-)?\d+$/);
if(!find.test(input))return(false);
return true;
},
real: function(input){
var find = new RegExp(/^(?:\+|-)?\d+[\.|,]\d*$/);
if(!find.test(input))return(false);
return true;
},
hora: function(input){
var find = new RegExp(/^(0[0-9]|1\d|2[0-3]):([0-5]\d):([0-5]\d)$/);
if(!find.test(input))return(false);
return true;
},
fecha: function(input){
var find = new RegExp(/^([0-9]{2})(-|\/)([0-9]{2})(-|\/)([0-9]{4})$/);
var borrar = "";
if(find.test(input)){
borrar = input;
if((input.substr(2,1) == "-") && (input.substr(5,1) == "-")){
for(i=0; i<10; i++){
if(((input.substr(i,1)<"0") || (input.substr(i,1)>"9")) && (i != 2) && (i != 5)){
borrar = "";
break;
}
}
if(borrar){
a = input.substr(6,4);
m = input.substr(3,2);
d = input.substr(0,2);
if((a < 1900) || (a > 2050) || (m < 1) || (m > 12) || (d < 1) || (d > 31)){
borrar = "";
}else{
if((a%4 != 0) && (m == 2) && (d > 28)){
borrar = ""; // Año no viciesto y es febrero y el dia es mayor a 28
}else{
if((((m == 4) || (m == 6) || (m == 9) || (m==11)) && (d>30)) || ((m==2) && (d>29))){
borrar = "";
}
}
}
}
}
}
if (borrar == ""){
return false;
}else{
return true;
}
}
}
Código:
<script type="text/javascript">
var campoRUT = document.getElementById("txtRUT");
campoRUT.validar = function(){
if(!VALIDAR.rut(this.value)){
throw (new String("El campo RUT no es válido"));
}
return true;
}
function formulario_submit(){
try{
campoRUT.validar();
// Sentencias ......
}catch(ex){
alert(ex);
}
}
</script>
|