Foros del Web » Programando para Internet » Javascript »

llamar funcion javascript desde javascript

Estas en el tema de llamar funcion javascript desde javascript en el foro de Javascript en Foros del Web. Hola saludos a todos tengo el siguiente codigo: Código: <select name = 'marcas' id='marcas' onChange='cargaContenido(this.id)'> <option value = "0">Seleccione una Marca</option> <?php $total_marcas = count($datos_marcas); ...
  #1 (permalink)  
Antiguo 09/07/2011, 14:10
Avatar de Joefay  
Fecha de Ingreso: noviembre-2010
Mensajes: 12
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta llamar funcion javascript desde javascript

Hola saludos a todos tengo el siguiente codigo:

Código:
<select name = 'marcas' id='marcas' onChange='cargaContenido(this.id)'>
	<option value = "0">Seleccione una Marca</option>
	<?php 
	$total_marcas = count($datos_marcas);
	for($i = 0; $i < $total_marcas; $i++)
	{
		if($datos[0]['id_marca'] == $datos_marcas[$i]['id_marca'])
		{
		?>
		   <option value = "<?php echo $datos_marcas[$i]['id_marca']; ?>" 
                   selected="selected"><?php echo $datos_marcas[$i]['nombre_marca'];?>      
                  </option>
		<?php
		}
		else
		{
		?>
		   <option value = "<?php echo $datos_marcas[$i]['id_marca']; ?>"><?php echo $datos_marcas[$i]['nombre_marca'];?></option>
		<?php
		}
	}
	?>
		</select><font color="red"> *</font>


//justo debajo tengo este script


<script language="javascript" type="text/javascript">
var lista = document.getElementById("marcas");
var valorSeleccionado_id = lista.options[lista.selectedIndex].value;
//var valorSeleccionado_texto = lista.options[lista.selectedIndex].text;
//alert("el id del seleccionado es: " + valorSeleccionado_id + "   y el texto es: " + valorSeleccionado_texto);
cargaContenido(valorSeleccionado_id);
</script>
lo que pretendo es de que por medio de javascript enviar el elemento seleccionado del select hacia la funcion cargaContenido(valorSeleccionado_id) para que cargue otro select apartir del id que le llegue, esto me funciona cuando ya esta cargada la pagina con el onChange del select y pretendo que sea tambien cuando esta cargando, el alert que esta comentado si muestra el id que necesito enviar, gracias de antemano.
  #2 (permalink)  
Antiguo 09/07/2011, 15:23
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: llamar funcion javascript desde javascript

buenas,
tendrías que mostrar la función cargarContenido. adivinando... fijate que en la invocación de onchange e la invocación en el script no estan pasando el mismo tipo de valor. quiero decir, en onchange siempre estas pasando como argumento el id de <select> (#marcas) mientras que en el script estas pasando el valor del option seleccionado. probablemente tu función esta operando con el id de modo que erroneamente en la invocación considera el valor del option como id.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 09/07/2011, 18:13
Avatar de Joefay  
Fecha de Ingreso: noviembre-2010
Mensajes: 12
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: llamar funcion javascript desde javascript

Bueno por fin resuelto, efectivamente en el onChange del select marcas envía como parámetro la palabra "marcas" , me estuve basando en el ejemplo de este enlace http://www.formatoweb.com.ar/ajax/select_dependientes.php y supuse que lo que enviaba por el onChange era el valué del seleccionado, al ver bien la función 'cargaContenido' recoge el option seleccionado, solo basto con enviarle por parámetro el id del select y mover el javascript justo después del segundo select osea el dependiente.

<script language="javascript" type="text/javascript">
var idSelectOrigen = "marcas";
cargaContenido(idSelectOrigen);
</script>

Gracias por responder

Última edición por Joefay; 09/07/2011 a las 18:16 Razón: Enlace

Etiquetas: funcion, php
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 23:54.