Acá está más claro FUNCION.js URGENTE!!

elisa44
08 de Febrero del 2006
Tengo una función JavaScript en un archivo script.js que verifica si el rut es correcto, y tengo un archivo html, donde se ingresa el rut y un botón grabar que llama a la función grabar(), dentro de esta función llamo a una función valida_rut(var1,var2) que está en el archivo script.js. Esto no me funciona, entra a la función grabar(), pero no entra al if(document.headerForm.rut.value!="")……, no arroja ningún error, solo no hace nada. Aquí va la función y el archivo html:

FUNCION script.js:
function valida_rut(crut,dv)
{
var rut=crut;
var largo=rut.length;
var i=0;

var dv=dv;
var mult=2;
var suma=0;
largo--;
while(largo>=0)
{
suma=suma+(rut.charAt(largo)*mult);
if(mult>6)
mult=2;
else
mult++;
largo--;
}
var resto = suma%11;
var digito = 11-resto
if(digito==10)
digito="K" ;
else
if(digito==11)
digito=0;

if(digito!=dv)
return false;
else
return true;
}

FIN DE LA FUNCION
ARCHIVO HTML:
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/mktree.css" rel="stylesheet" type="text/css">
<link href="templates/switch/style.css" rel="stylesheet" type="text/css">
<script language="JavaScript" src="script/script.js"></script>
<script language="JavaScript">
function esNumero(Nro)
{
var charCode
if (navigator.appName == "Netscape") // me fijo
charCode = Nro.which; // leo la tecla en ASCII que ingreso
else
charCode = Nro.keyCode; // leo la tecla en ASCII que ingreso
//if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 44)
if (charCode < 48 || charCode > 57)
{
//alert("Esto no es un Numero !!");
return false;
}
return true;
}
function grabar() {
if(document.headerForm.rut.value!="")

{

if(!valida_rut(document.headerForm.rut.value,document.headerForm.dv.value))
{

alert("Rut Erroneo");
document.headerForm.rut.focus();
return false;
}
}
else {
document.headerForm.submit();
return true;
}
}
</script>
</head>
<body>
<div id="content">
<div id="formTable">
<form action="" method="post" name="headerForm" id="headerForm">
<table border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td>Rut</td>
<td><input name="rut" type="text" id="rut" onKeyPress="return esNumero(event)" /></td>
<td>-</td>
<td><input name="dv" type="text" class="inputDv" id="dv" maxlength="1" /></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4"><button type="reset" name="btnReset" id="btnReset">Cancelar</button>
<button type="submit" name="btnSave" id="btnSave" onclick="return grabar();">Grabar</button>
<button type="submit" name="btnExit" id="btnExit">Salir</button></td>
</tr>
</tfoot>
</table>
</form>
</div>
</div>
</body>
</html>
FIN DEL ARCHIVO HTML