Foros del Web » Programando para Internet » Javascript »

duda urgente sobre javascript

Estas en el tema de duda urgente sobre javascript en el foro de Javascript en Foros del Web. Hola, tengo una duda urgente. Este codigo que aparece procesa el envio de un formulario. En internet explorer funciona correctamente, pero el problema es que ...
  #1 (permalink)  
Antiguo 04/03/2005, 05:35
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
duda urgente sobre javascript

Hola, tengo una duda urgente. Este codigo que aparece procesa el envio de un formulario. En internet explorer funciona correctamente, pero el problema es que además a esta página, operarios de un almacen acceden con unas pda pocket pc. Estas pistolas utilizan javascript 1.0, que creo que es el de internet explorer 3. El problema es que en las pistolas este código no funciona correctamente, creo que el error está en la forma de acceder a los campos, aunque no estoy seguro.

document.forms[0].elements["N.valtot"]
esta forma de acceder creo que no la soporta. Quiza si el campo no se llamara N.valtot no habría problemas, pero debe llamarse así, porque la N se utiliza para otras funciones.

En la pda sale el siguiente mensaje:

Error:'document.forms.0.elements.N.valtot' is not an object

No se si realmente la pistola consigue hacer el primer if o no, aunque creo que no porque si no si estaría accediendo bien.

Como podría acceder para que javascript no de error?

//variable semaforo para controlar que sólo se haga una vez el submit
var semaforo;

function validaFormulario() {
//Validamos los datos del formulario.
//1. Los campos Can y Preuni no pueden tener ','
//alert("Starting to save 3");
var lbresult = true;


if (document.forms[0].elements["N.preuni"] != null)
{
document.forms[0].elements["N.valtot"].value = (document.forms[0].elements["N.can"].value) * (document.forms[0].elements["N.preuni"].value);
}
else
{
document.forms[0].elements["N.valtot"].value = (document.forms[0].elements["N.can"].value) * (document.forms[0].elements["N.preuniordcom"].value);
}

<% if TipoPedido="FMS" or (TipoPedido="REP" and tiporeparable="FMS") then %>
//lbresult = isnumeric(document.infpedrecNY.elements["N.can"].value) ;
//lbresult = lbresult && (isnumeric(document.infpedrecNY.elements["N.preuni"].value)) ;
//lbresult = (document.infpedrecNY.elements["S.codcon"].value!=="");
<% else %>
//lbresult = isnumeric(document.infpedrecNY.elements["N.can"].value);
//lbresult = lbresult && (isnumeric(document.infpedrecNY.elements["N.preuniordcom"].value));
//lbresult = (document.infpedrecNY.elements["S.codcon"].value!=="");
<% end if %>

//alert("Continue to save");

if (lbresult != true) {
<% if idioma = "ENG" then %>
alert("Character ',' is not allowed in numeric fields and Case must be filled.");
<% else %>
alert("El caracter ',' no está permitido en campos numéricos y el contrato debe estar relleno.");
<% end if %>
} else {
//alert("Document validated.");
if(semaforo!=1) {semaforo=1; document.forms[0].submit();}
else {}



}
}


Gracias y un saludo
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 08:47.