Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/06/2010, 12:58
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Agregar evento a checkbox cuando lo deselecciono

Hola

Se me ocurre lo siguiente a ver que parece

Creas dos div

Cita:
<div id="opciones1" style="display:block;">Mi contenido predeterminado</div>
<div id="opciones2" style="display:none;>Nuevo contenido</div>
Uno (contenido predeterminado) en block y el otro (contenido nuevo) none

Por otro lado en la llamada a la función get le añadimos otro argumento

Cita:
<input type="checkbox" name="port_post[]" value="24" id="port24" onclick="get(this.parentNode, this.checked);" />
con lo cual sabes si el checkbox está en true o false

Ahora en la función get

Código Javascript:
Ver original
  1. function get(obj, bol) {
  2. if(bol) { // si es true, prosigue
  3.   var poststr = "port_post=" + encodeURI( document.getElementById("port24").value );
  4.   makePOSTRequest('http://www.sitio.com/inc/metaform.php?opcion='+ encodeURI( document.getElementById("port24").value ), poststr);
  5. } else { // si es false mostramos el div con el contenido predeterminado
  6. document.getElementById('opciones2').style.display = 'none';
  7. document.getElementById('opciones1').style.display = 'block';
  8. }

Por último, si se llega a la función alertContents cargamos la respesta y cambiamos el display de los div

Código Javascript:
Ver original
  1. function alertContents() {
  2. ....
  3. if (http_request.status == 200) {
  4. result = http_request.responseText;
  5. document.getElementById('opciones2').innerHTML = result;
  6. document.getElementById('opciones1').style.display = 'none';
  7. document.getElementById('opciones2').style.display = 'block';

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />