Foros del Web » Programando para Internet » Javascript »

Problemas con eventos onClick

Estas en el tema de Problemas con eventos onClick en el foro de Javascript en Foros del Web. Resulta que estoy haciendo un webshop para un servidor de Mu Online, pero tengo un problema que es al usar dos eventos en un onClick. ...
  #1 (permalink)  
Antiguo 24/07/2008, 12:06
 
Fecha de Ingreso: julio-2008
Mensajes: 3
Antigüedad: 15 años, 9 meses
Puntos: 0
Problemas con eventos onClick

Resulta que estoy haciendo un webshop para un servidor de Mu Online, pero tengo un problema que es al usar dos eventos en un onClick. El problema es el siguiente:
Hice un menu con 6 opciones (las opciones de los equipos excelentes) que está formado por checkboxes.
Ahora, yo quiero que 2 de estas 6 opciones se puedan elegir (o sea, solo limitar a 2 elecciones) y al mismo tiempo que sume el precio que va a gastar el usuario.
El codigo que utilizo para la suma de precios es el siguiente:
Código:
<script type="text/javascript">
var total=0;
function precio (valor, idbutton) {
if (document.getElementById(idbutton).checked) {
total=parseInt(total) + parseInt(valor);
document.getElementById('textovalor').innerHTML = "Total: $"+total;
}
else {
total=parseInt(total)-parseInt(valor);
document.getElementById('textovalor').innerHTML = "Total: $"+total;
}
}
</script>
Para activarlo uso el evento onClick="precio(valor, id)" [Ejemplo: onClick="precio('1', '1')". El ID del checkbox es 1 y el precio que va a subir es 1] (Creo que saben leerlo y entenderlo).

Y el script que uso para limitar las checkboxes es byName. Este es el siguiente:
Código:
<script>
function doIt(_v,casilla,form)

{

 
            a = casilla.form.exc0.checked;
            b = casilla.form.exc1.checked;
            c = casilla.form.exc2.checked;
            d = casilla.form.exc3.checked;
            e = casilla.form.exc4.checked;
			f = casilla.form.exc5.checked;

 

contador = (a ? 1 : 0) + (b ? 1 : 0) + (c ? 1 : 0) + (d ? 1 : 0) + (e ? 1 : 0) + (f ? 1 : 0);

    if (contador > 2)

    {
	casilla.checked = false;
	
	alert("Solo puedes elegir 2 opciones excellent");



    }

 
  var X=eval("document.leather.exc"+_v+".checked?0:1");

  if(isIE)

  {

    eval(""+_v+".style.backgroundColor=bC[X]");

    eval(""+_v+".style.color=C[X]");

  }

  if(isNS6)

  {

    document.getElementById("exc"+_v).style.backgroundColor=bC[X];

    document.getElementById("exc"+_v).style.color=C[X];

  }

} 
          

</script>
Lo que quiero es limitar los checkboxes a 2 elecciones y que continuo sumando el precio.
El problema de esto, es que cuando intento hacer estos dos eventos en un onClick no me funcionan.
O sea, 1 solo me funciona, pero el otro no.

Les muestro lo siguiente:
1. Pongo: onClick="doIt(this,this,this_form);precio('1', '2')".
Ahi solo me funciona el doIt, el func precio no me funciona
2. Pongo: onClick="precio('1', '2');doIt(this,this,this_form)"
Aca precio funciona bien y doIt tambien, pero cuando marco 3 casillas (el doIt solo me permite 2), al desactivarla no me resta el precio que tenia la casilla seleccionada, lo deja como si la casilla seguiria marcada.

Espero que me puedan ayudar.
Gracias de antemano.
Atte, Kratos.

Última edición por Kratos-MOD; 25/07/2008 a las 07:07
  #2 (permalink)  
Antiguo 26/07/2008, 14:23
 
Fecha de Ingreso: julio-2008
Mensajes: 3
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problemas con eventos onClick

Bueno, se que está mal el doble post, pero lo hago con la intención de saciar mis problemas.
Agradezco a todos que por lo menos vieron el post, tal vez no sabian como responderlo.
Por favor necesito ayuda. Gracias de antemano.
  #3 (permalink)  
Antiguo 26/07/2008, 15:22
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: Problemas con eventos onClick

Hola Kratos-MOD, bienvenido al foro

Podrías mostrarnos el html de los checkboxs y del lugar donde se coloca el resultado de la suma?

Estaré encantado de ayudarte.

Saludos
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 02:31.