Foros del Web » Programando para Internet » Javascript »

Como validar mi evento javascript al Actualizar

Estas en el tema de Como validar mi evento javascript al Actualizar en el foro de Javascript en Foros del Web. Buenas tengo una consulta, tengo un evento javascript, que me oculta dos radios y me los muestra al activar un checkbox por medio de DIVs. ...
  #1 (permalink)  
Antiguo 09/10/2012, 15:10
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Pregunta Como validar mi evento javascript al Actualizar

Buenas tengo una consulta, tengo un evento javascript, que me oculta dos radios y me los muestra al activar un checkbox por medio de DIVs.
El evento funciona bien, solo que el problema es que al actualizar me muestra oculto, saben podria hacer para validar si el checkbox es true, me muestre los dos radios.
Se los agradeceria que me ayuden con este problema.
Les paso mi codigo:

Código:
function showContent() {
        element = document.getElementById("divEstUndadMnra");
        check = document.getElementById("umiChk");
        if (check.checked) {
            element.style.display='block';
        }
        else {
            element.style.display='none';
        }
    }

<s:checkbox name="beans.sitUndadMnra" id="umiChk" onchange="javascript:showContent()"/>

<div class="style14" id="divEstUndadMnra" style="display: none;" >
      	<s:radio name="beans.idEstadoUnidad" list="estUndadMnra" listKey="ID" listValue="DESCRIPCION"/>
 </div>
  #2 (permalink)  
Antiguo 09/10/2012, 15:26
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como validar mi evento javascript al Actualizar

buenas,
lo primero es que deberías mostrar el código correcto. veo que tienes unas etiquetas y atributos raros. supongo que estás usando jsp. aun así, para este caso no creo que importe mucho. si bien entiendo tu situación, lo que quieres mostrar u ocultar las opciones según sea el estado del checkbox al cargar el documento. en ese caso, básicamente debes invocar el handler que tienes para el evento onchange, pero esta vez en el evento onload.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 09/10/2012, 15:33
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Respuesta: Como validar mi evento javascript al Actualizar

Si exactamente estoy usando Strut 2, pero ya probe poniendo onload en el DIV:

<div class="style14" id="divEstUndadMnra" style="display: none;" onload="javascript:showContent();" >

Pero no me muestra igual....
El problema que veo yo, es que el primero va llamar al evento del checkbox, tengo que filtrarlo para que no se active si esta true el checkbox.
  #4 (permalink)  
Antiguo 09/10/2012, 15:41
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como validar mi evento javascript al Actualizar

no, en el DIV no puedes porque html no reconoce ese evento para ese elemento. onload se utiliza en el elemento BODY. también puedes hacerlo de la otra forma, filtrando desde el servidor. es decir, si vas a mostrar el checkbox marcado desde un inicio, entonces no imprimes la propiedad display:none del elemento.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 10/10/2012, 09:23
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Como validar mi evento javascript al Actualizar

Buenos días a todos cuando estés usando algún lenguaje de programación sea .net, java y sus respectivos framework struts, spring,asp.net mvc etc. Debes tener conocimiento que cada uno usa sus propios tag respectivos y que al momento que se levanta la pagina entonces recien convierte estos tag en los respectivos elementos html correspondientes.

Entonces para que muestres los radios tal como tu ejemplo funciona usa el evento onload tal como te menciono zerokilled

asi debes hacerlo

Código Javascript:
Ver original
  1. function showContent() {
  2.     var element = document.getElementById("divEstUndadMnra");
  3.     var check = document.getElementById("umiChk");
  4.     if (check.checked) {
  5.         element.style.display='block';
  6.     }
  7.     else {
  8.         element.style.display='none';
  9.     }
  10. }
  11. window.onload = function(){
  12.     showContent();
  13. }

Ademas aclarar que cuando estes usando variables en javascript siempre trata de usar var, el código lo que esta haciendo es decir que si la pagina ya se cargo entonces ejecutar la función showContent

Saludos
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #6 (permalink)  
Antiguo 10/10/2012, 12:28
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Respuesta: Como validar mi evento javascript al Actualizar

Ok gracias por el dato, son los mejores.
  #7 (permalink)  
Antiguo 10/10/2012, 14:16
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Respuesta: Como validar mi evento javascript al Actualizar

Una ultima consulta como podria generalizar mi funcion javascript, ya uso la misma funcion para varios componentes en el formulario, no lo veo muy adecuada, aunque funcione bien.

function showContent() {

var element = document.getElementById("divEstUndadMnra");
var check = document.getElementById("umiChk");

var elementSitPam = document.getElementById("divSitPam");
var checkPam = document.getElementById("pamChk");

var elementNumIIA = document.getElementById("divNumRegistroIIA");
var checkNumIIA = document.getElementById("iiaChk");

var elementNumDIA = document.getElementById("divNumRegistroDIA");
var checkNumDIA = document.getElementById("diaChk");


if (check.checked) {
element.style.display='block';
}
else {
element.style.display='none';
}

if (checkPam.checked) {
elementSitPam.style.display='block';
}
else {
elementSitPam.style.display='none';
}

if (checkNumIIA.checked) {
elementNumIIA.style.display='block';
}
else {
elementNumIIA.style.display='none';
}

if (checkNumDIA.checked) {
elementNumDIA.style.display='block';
}
else {
elementNumDIA.style.display='none';
}
}

window.onload = function(){
showContent();
}

Etiquetas: evento, funcion
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

SíEste tema le ha gustado a 3 personas




La zona horaria es GMT -6. Ahora son las 12:17.