Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/11/2005, 17:15
yconoclasta
 
Fecha de Ingreso: febrero-2005
Mensajes: 135
Antigüedad: 19 años, 9 meses
Puntos: 0
Gracias, pues es un poco largo, por eso no quería pegarlo, pero si eso facilita.

Código PHP:
function ValidaNumero(CampopOpcion
{
    var 
checkOK "0123456789.,";
    var 
checkStr QuitaFormato(Campo.value);
    var 
allValid true;
    var 
decPoints 0;
    var 
allNum "";
  for (
0;  checkStr.length;  i++) {
    
ch checkStr.charAt(i);
    for (
0;  checkOK.length;  j++)
      if (
ch == checkOK.charAt(j))
        break;
    if (
== checkOK.length) {
      
allValid false;
      break;
    }
    if (
ch == ".") {
      
allNum += ".";
      
decPoints++;
    }
    else if (
ch != ",")
      
allNum += ch;
  }
  if (!
allValid) {
    
alert("Escriba sólo dígitos en este campo.");
    
Campo.value ="0.00"
    
Campo.focus();
    
Campo.select();
    return (
false);
  }

  if (
decPoints 1) {
    
alert("Escriba un número válido en este campo.");
    
Campo.value ="0.00"
    
Campo.focus();
    
Campo.select();
    return (
false);
  }

  if (
QuitaFormato(Campo.value) == "")
        
Campo.value "0.00";

  if (
QuitaFormato(Campo.value) >     9999999999.99)
  {
    
alert("El importe no puede ser mayor a 9,999,999,999.99");
    
Campo.value ="0.00"
    
Campo.focus();
    
Campo.select();
    return (
false);
  }

  if (
pOpcion && QuitaFormato(Campo.value) != "")
        
Campo.value FormateaNumero(Campo.value);
  return (
true);
}


function 
FormateaNumero(Numero
{

    if (
Numero == "0")
    {
        
Numero "0.00"
    
}
    
    var 
numStr QuitaFormato(Numero);
    var 
pDecimal numStr.indexOf(".");
    var 
nDecimal SubCadena(numStrpDecimal3);
  var 
pNegativo numStr.indexOf("-");
  if (
pNegativo > -1)    
        var 
nEntero SubCadena(numStr1pDecimal );
    else
       var 
nEntero SubCadena(numStr0pDecimal );    
    var 
lEntero nEntero.length;
    var 
vCEntero lEntero;
    var 
nNumero ""
    
while (true) {
        if (
vCEntero 0) {
            
nNumero "," SubCadena(nEnterovCEntero 33) + nNumero            
            vCEntero 
vCEntero 3;
        }
        else {
            
nNumero SubCadena(nEntero0vCEntero) + nNumero;
            break;
        }
    }
    
nNumero nNumero nDecimal;
    if (
pNegativo > -1)    
      
nNumero "-" nNumero;
    return (
nNumero);
}


function 
SubCadena(pCadenapIniciopCuantos
{
var 
vSubcadena
var vCicCadena
   
  vSubcadena 
"";
  for (
vCicCadena 0vCicCadena pCuantosvCicCadena++) {
    
vSubcadena vSubcadena pCadena.charAt(pInicio vCicCadena); 
    }
  return 
vSubcadena;
}


function 
QuitaFormato(NumFormateado
{
var 
numAux "";
var 
numSCero "";
var 
vCicNumero;

for (
vCicNumero=0vCicNumero NumFormateado.lengthvCicNumero++)
    if (
NumFormateado.charAt(vCicNumero) != "0") {
      
numSCero SubCadena(NumFormateadovCicNumeroNumFormateado.length);
      break;
    }
for (
vCicNumero=0vCicNumero numSCero.lengthvCicNumero++)
    if (
numSCero.charAt(vCicNumero) != ",")
        
numAux numAux numSCero.charAt(vCicNumero);
if (
numAux.indexOf(".") == -1)
    
numAux numAux ".00";
var 
vPos numAux.indexOf(".");
var 
vLon numAux.length;
var 
varCero "00";
if (
vLon vPos 3)
    
numAux numAux SubCadena(varCerovLon vPos 12);
if (
numAux.charAt(0) == ".") {
    
numAux "0" numAux;
}
return (
numAux);
}


function 
EsCero(Campo,Mensaje)
{
    if (
parseFloat(QuitaFormato(Campo.value)) <= )
    {
        
alert (Mensaje);
        
Campo.focus();
        
Campo.select();
        return (
false);
    }
    else
    {
        return (
true);
    }
}


function 
SeleccionaTexto(Campo)

{
    
//Si el valor del campo es diferente de ""
    
if (Campo.value != "")
    {
        
Campo.select();
    }
}


function 
ValidaCampos()
{
    
//Obtiene la clave del tipo de crédito que ha sido seleccionado
    
TipoCredito document.form1.ddlDestinoCredito.options[document.form1.ddlDestinoCredito.selectedIndex].value;
    if (
TipoCredito == "0")
    {
        
alert ("Debe seleccionar el Destino de Crédito");
        
document.form1.ddlDestinoCredito.focus();
        return 
false;
    }

    
//Obtiene la clave de la plaza que ha sido seleccionado
    
Plaza document.form1.ddlCiudad.options[document.form1.ddlCiudad.selectedIndex].value;
    if (
Plaza == "(Seleccione una Ciudad)")
    {
        
alert ("0");
        
document.form1.ddlCiudad.focus();
        return 
false;
    }

    
//Obtiene la clave del tipo de simulador seleccionado
    
TipoSimulador document.form1.ddlCalculadoPor.options[document.form1.ddlCalculadoPor.selectedIndex].value;
    if (
TipoSimulador == "0")
    {
        
alert ("Debe seleccionar la opción por la cual desea hacer la simulación");
        
document.form1.ddlCalculadoPor.focus();
        return 
false;
    }
    
    
//Verifica que el importe no este en ceros
    
if (TipoSimulador == "Comprar Casa")
        
mensaje "¿Cuál es el Valor del Bien?";
    if (
TipoSimulador == "Construir Casa")
        
mensaje "¿Cuáles son los Ingresos Mensuales?";
    if (
TipoSimulador == "Remodelar Casa o Departamento")
        
mensaje "¿Cuál es el Importe Solicitado?";
    if (
EsCero(document.form1.txtMonto,mensaje)== false)
        return 
false;
    
    
//Manda llamar el resultado
    
parent.frames["fraResultado"].location.href="resultado.aspx?TipoCredito=" TipoCredito "&TipoSimulador=" TipoSimulador "&Importe=" document.form1.txtImporte.value "&Plaza=" Plaza;
    return 
true;