Hola a todos!
Escribo porque llevo muuucho muuucho tiempo muy mosqueda con un problema de checkboxes y no hay manera humana de resolverlo.
Tengo una aplicacion Web en la que salen imágenes y bajo éstas, un checkbox. Si la imagen está metida en un carrito de la compra, cuando aparezca en pantalla debe aparecer seleccionado su checkbox correspondiente.
Uso páginas JSP con javascript y ajax.
El código es:
Código:
i=0;
j=0;
idCheckBox = "checkBox0";
idCheck = "check0";
while (i < data.listSize){
cart.existsItem(listName[i+1],listId[i+1],callBackHandler4);
if(exists){
alert("es true");
document.getElementById(idCheckBox).innerHTML = '<input Type="checkbox" id="' + idCheck + '" onClick="selectCh('+i+')" checked/>';
}
else{
alert("es false");
document.getElementById(idCheckBox).innerHTML = '<input Type="checkbox" id="' + idCheck + '" onClick="selectCh('+i+')"/>';
}
i++;
idCheckBox = "checkBox" + i;
idCheck = "check" + i;
}
cart.existsItem(...) es una función en Ajax que me devuelve 1 o 0 (=está presente en el carrito o no)
1)Si dejo el código tal cual está todo funciona bien, pero claro, el usuario ve continuamente "es true" o "es false", con lo cual eso tiene que desaparecer...además de salirme el "null" que explico en 3).
2)Si quito los alert de "es true" o "es false" nunca me selecciona nada
3)Si comparo con el elemento que debería (en cart.existsItem uso i+1), que debería ser i, detecta los elementos desplazados 1 posición hacia la derecha y por tanto los selecciona tb desplazados hacia la derecha. Por eso he metido el "i+1", pero claro!, al llegar al final, como no existe el último elemento me saca un null por pantalla...
Alguien me puede por favor ayudar a solucionar esto??Llevo meses con el tema y no hay manera, ya no se si pensar que javascript anda cojo de algún sitio o que...
Muchas gracias!
Cristina.