
16/12/2008, 12:35
|
| | Fecha de Ingreso: septiembre-2008
Mensajes: 6
Antigüedad: 16 años, 7 meses Puntos: 0 | |
error con variables de conexion Saludos
Estoy teniendo problemas con las conexiones concurrentes. Tengo una página principal en la cual muestro un resumen del carrito, importe y artículos. Está enfocada a agentes de ventas que levantan pedidos para sus clientes. Por lo que al entrar en la página de "cambiar cliente" firefox me marca error en que "cnx2 is undefinded" y no termina de cargar el resumen del carrito dejandome los campos en blanco.
Ya habia tenido un error similar pero donde no funcionaba era en IE.
Aqui el código de la subpágina y en rojo donde me marca el error
Código:
var cnx2;
var text;
function chngCli()
{
var sel = document.getElementById("slCli")
var idCli = sel.options[sel.selectedIndex].getAttribute('value');
text = sel.options[sel.selectedIndex].text;
mandaCli(idCli,text);
}
function mandaCli(id,txt)
{
var pag = 'scripts/jx_chngCli.asp?id='+ id + '&txt=' + txt ;
cnx2 = nuevoAjax();
cnx2.onreadystatechange = procesarEventos;
cnx2.open('GET',pag ,true);
cnx2.send(null);
}
function procesarEventos()
{
if(cnx2.readyState == 4 && cnx2.status == 200)
{
var lbl = document.getElementById('d_clie');
lbl.innerHTML = 'Cliente : '+ text
window.location = 'index.asp?nav=ini';
alert('cliente cambiado');
return;
}
if(cnx2.readyState == 4 && cnx2.status == 500)
{
alert('El cliente seleccionado no tiene articulos asignados');
return;
}
}
//***************************************
//Funciones comunes
//***************************************
function addEvent(elemento,nomevento,funcion,captura)
{
if (elemento.attachEvent)
{
elemento.attachEvent('on'+nomevento,funcion);
return true;
}
else
if (elemento.addEventListener)
{
elemento.addEventListener(nomevento,funcion,captura);
return true;
}
else
return false;
}
function nuevoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
y este es el código ajax de la página principal
Código:
addEvent(window,'load',carga_importe,false);
var cl_cnx1;
function carga_importe()
{
cl_cnx1=crearXMLHttpRequest();
if (window.ActiveXObject)
{ //es interné explorer
cl_cnx1.onreadystatechange = query_edocta;
cl_cnx1.open("POST", '../Scripts/jx_importe.asp', true);
cl_cnx1.send(null);
}
else
if (window.XMLHttpRequest)
{ //tonces se supones es cualquier otro que si funciona
cl_cnx1.onreadystatechange = procesarEventos;
cl_cnx1.open('GET','../jx_importe.asp', true);
cl_cnx1.send(null);
}
}
function query_edocta()
{ //funcion para explorer
var epr = document.getElementById('cli_importe');
if(cl_cnx1.readyState == 4 && cl_cnx1.status ==200)
{
var xml = parseFloat(cl_cnx1.responseText);
//var mat = xml.getElementsByTagName('SALDO');
//alert(xml);
f=dynapi.functions;
var hid_imp = parseFloat(document.getElementById("hid_tx").value);
var mon = document.getElementById("hid_moneda").value;
var total = document.getElementById("cli_importe");
var num = (xml * ((hid_imp/100)+1));
num = f.formatNumber(f.toFloat(num),'#,###,##0.00');
var txt = 'Total: ' + num + ' ' + mon;
epr.innerHTML = txt;
}
else
{
epr.innerHTML = 'Total: cargando...';
}
}
function procesarEventos()
{
if(cl_cnx1.readyState == 4)
if(cl_cnx1.status==200)
{
//alert("cliente");
//var xml = cli_cl_cnx1.responseText;
xml = cl_cnx1.responseXML;
var can = xml.getElementsByTagName('importe');
var importe = can[0].firstChild.nodeValue;
f=dynapi.functions;
var hid_imp = document.getElementById("hid_tx").value;
if (hid_imp == null)
{ hid_imp = 0;}
var mon = document.getElementById("hid_moneda").value
var total = document.getElementById("cli_importe");
var num = (importe * ((hid_imp/100)+1));
var txt = 'Total: ' + (f.formatNumber(num,'#,###,##0.00')) + ' ' + mon;
total.innerHTML = txt;
}
}
//***************************************
//Funciones comunes
//***************************************
function addEvent(elemento,nomevento,funcion,captura)
{
if (elemento.attachEvent)
{
elemento.attachEvent('on'+nomevento,funcion);
return true;
}
else
if (elemento.addEventListener)
{
elemento.addEventListener(nomevento,funcion,captura);
return true;
}
else
return false;
}
function crearXMLHttpRequest()
{
var xmlHttp=null;
if (window.ActiveXObject)
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
else
if (window.XMLHttpRequest)
xmlHttp = new XMLHttpRequest();
return xmlHttp;
}
|