Foros del Web » Programando para Internet » Javascript »

Problema con substr

Estas en el tema de Problema con substr en el foro de Javascript en Foros del Web. Hola. llevo varias horas dandole vueltas a una funcion que valida un formulario y me da el siguiente error Banco.substr is not a function. El ...
  #1 (permalink)  
Antiguo 27/01/2011, 06:09
 
Fecha de Ingreso: diciembre-2008
Mensajes: 84
Antigüedad: 16 años
Puntos: 0
Problema con substr

Hola.

llevo varias horas dandole vueltas a una funcion que valida un formulario y me da el siguiente error Banco.substr is not a function.

El codigo es el siguiente:

Código:
function calculaDC(Banco, Cuenta){
	Pesos= new Array(6,3,7,9,10,5,8,4,2,1);
	var result ='';
	var iTemp =0;
	for (var n=0;n<=7;n++){
		iTemp  = iTemp + Banco.substr(7 - n, 1) * Pesos[n];
	}
	result = 11 - iTemp % 11;
	if (result > 9){
		result=1-result % 10;
	}
	iTemp=0;
	for (var n=0;n<=9;n++){
		iTemp  = iTemp + Cuenta.substr(9 - n, 1) * Pesos[n];
	}
	iTemp =11 - (iTemp % 11);
	if (iTemp > 9){
		iTemp =1-(iTemp % 10);
	}
	result=result*10+iTemp;
	return(result);
}
function HazteSocio(){
	IMPORTE = document.getElementById("00NA0000005QsHu").value;
	NIF = document.getElementById("00NA0000005QsHW").value;
	NOMBRE = document.getElementById("first_name").value;
	EMAIL = document.getElementById("email").value;	
	ENTIDAD = document.getElementById("00NA0000005QsHs").value;
	OFICINA = document.getElementById("00NA0000005QsHt").value;
	DC = document.getElementById("00NA0000005QsHq").value;
	CUENTA = document.getElementById("00NA0000005QsHr").value;
	if (IMPORTE == "" || NIF == "" || NOMBRE == "" || EMAIL == "" || ENTIDAD == "" || OFICINA == "" || DC == "" || CUENTA == "")
		alert("Por favor, rellene todos los campos obligatorios y vuelva a enviar el formulario. Muchas gracias.");
	else if ( !(/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(EMAIL)) )
		alert("Introduzca un email valido.");
	else if (isNaN(IMPORTE))
		alert("Introduzca un importe valido.");
	else if (calculaDC(ENTIDAD[0].value+OFICINA[0].value, CUENTA[0].value) != DC[0].value )
		alert ("Los datos bancarios son incorrectos. Por favor introdúcelos de nuevo");		
	else
		document.haztesocio.submit();	
}
Agradezco cualquier sugerencia.

Un saludo
  #2 (permalink)  
Antiguo 27/01/2011, 07:52
Avatar de Javier01  
Fecha de Ingreso: febrero-2008
Ubicación: Montevideo
Mensajes: 261
Antigüedad: 16 años, 10 meses
Puntos: 31
Respuesta: Problema con substr

Me parece que el problema va por el lado de que la variable Banco no es un string.
La función "substr", solo se aplica a string.
http://www.w3schools.com/jsref/jsref_substr.asp

Tal vez te sirva convertir el valor a string con "toString":
Banco=Banco.toString();

Saludos

Etiquetas: substr
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:57.