ok, no se si fui claro en el afan de simplificar las cosas, parece que no, pero ahora explico de manera global, abarcando todo el contexto de mi problema.
todo esto se situa en el contexto de dibujar los asientos de un bus., cada ves que selecciono un asiento cambio la imagen a "Poltrona3.jpg" del asiento, y en una caja de texto voy guardando el numero del asiento. si selecciono los asientos 1,2,3,4,5,6
creo una lista similar a "1;2;3;4;5;6" separadas por el caracter ";", si el vendedor se equivoca o sencillamente el cliente no quiere el asiento 4 solo hace click en el asiento, este recupera la imagen con la que viene por defecto que es "Poltrona.jpg" y la lista se modifica a "1;2;3;5;6".
tengo una tabla creada dinamicamente con php, la cual en su interior tiene div's, creados dinamicamente o en tiempo de ejecucion, estos div tiene una imagen dentro que se llama "Poltrona.jpg", a su ves estos div tiene asignados dinamicamente el evento onclick, que realiza la siguiente funcion
Código:
function cambio1(v_div){
vimg = document.getElementById(v_div).style.backgroundImage;//capturo imagen
asiento_select = document.getElementById('asiento').value;//asigno el valor del asiento
if (vimg == 'url(img/Poltrona.jpg)') {
document.getElementById(v_div).style.backgroundImage = 'url(img/Poltrona3.jpg)';//cambio imagen
if (asiento_select.length == 0){//si es primer click y la lista esta vacia
asiento_select = v_div;//asigno a una variable el valor del asiento
}
else {//si la lista ya tiene un valor
asiento_select = asiento_select + ';' + v_div;//contruyo la lista 1;2;3... etc.
document.getElementById('asiento').value = asiento_select;//asigno a la caja de texto la lista creada
}
}
else{//aca comienzo a perderme
document.getElementById(v_div).style.backgroundImage = 'url(img/Poltrona.jpg)';//si quiero eliminar el asiento, cambio la imagena ala por defecto
if (asiento_select.length <= 2){//si es el primer valor vuelvo la lista a vacio
document.getElementById('asiento').value="";
}
else{
asiento_rc = asiento_select.split(";");//sino convierto la lista a un array para poder eliminar el valor
for(i=0;i<asiento_rc.length;i++){//recorro el array
if(asiento_rc[i] == v_div){//pregunto si es el valor
asiento_rc = asiento_rc.killIndex(i);//supuestamente lo elimino
}
else{
asiento_new = asiento_new + ";" + asiento_rc[i];//y a ca supuestamente reconstruyo la lista
}
}
document.getElementById('asiento').value = asiento_new;//aca asigno el valor d ela nueva lista a la caja de texto
}
}
}
esto debe tener varios errores pero por eso le pido ayuda, ojala alla sido lo mas claro posible, gracias por sus aportes...
