funcion onchange no sirve(resuelto)

Iniciado por basickdagger, 15 Mayo 2013, 17:02 PM

0 Miembros y 1 Visitante están viendo este tema.

basickdagger

bueno no entiendo q pueda suceder pero tengo esto y no funciona


<?php
echo '<select id="tipos" name="tipo" onChange="caja(this.value)">';

while(
$row mysql_fetch_array($select))
  {
  echo 
'
<option>'
.$row['tipo'].'</option>';
}

echo 
'</select>';
?>



<script>
function caja(x){
alert(x);

}
</script>


<?php




pero si pongo el alert directamente en onchange si funciona...


<?php
echo '<select id="tipos" name="tipo" onChange="alert(this.value)">';

while(
$row mysql_fetch_array($select))
  {
  echo 
'
<option>'
.$row['tipo'].'</option>';
}

echo 
'</select>';
?>









intente solamente hacer un alert normal solo para ver si entra a la funcion y parece q tampoco

<?php
echo '<select id="tipos" name="tipo" onChange="caja()">';

while(
$row mysql_fetch_array($select))
  {
  echo 
'
<option>'
.$row['tipo'].'</option>';
}

echo 
'</select>';
?>



<script>
function caja(){
alert("entra");

}
</script>


<?php



no funciona, pruebo mi codigo en local y hace todo... no entiendoooo haha xD

[u]nsigned

No parecen haber errores, podria postear el codigo HTML que genera el php? posiblemente tengas algun tag sin cerrar o algo asi...

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

basickdagger

Cita de: El As del Club Paris en 15 Mayo 2013, 22:10 PM
No parecen haber errores, podria postear el codigo HTML que genera el php? posiblemente tengas algun tag sin cerrar o algo asi...


mira probé de nuevo ahora utilice este codigo, pero sigue sin funcionar...

<?php
echo '<tr><td>Categoria</td>  <td><select id="categoria" name="categoria" onChange="prueba();">';
while(
$row mysql_fetch_array($select))
  {
  echo 
'
<option>'
.$row['categoria'].'</option>';
}
echo 
'</select></td></tr>';
?>

<script>
function prueba(){
alert("cambió");

}
</script>




revise el código q me genera el php en html pero no veo problema... bueno dando como aclaración ese componente select es cargado junto con mas información a través de ajax...sera q ajax me bloquea la función???...



#!drvy

Si usas Chrome/IE pulsa F12.. si usas fFrefox pulsa Ctrl + Shift + K, asegúrate de que el script este cargado y realiza la acción. Si te da algún error ya sabrás de lo que es.. si no, como te ha mencionado @El As... , postea el resto del code.

Saludos

basickdagger

Cita de: drvy | BSM en 16 Mayo 2013, 20:25 PM
Si usas Chrome/IE pulsa F12.. si usas fFrefox pulsa Ctrl + Shift + K, asegúrate de que el script este cargado y realiza la acción. Si te da algún error ya sabrás de lo que es.. si no, como te ha mencionado @El As... , postea el resto del code.

Saludos

gracias por sus respuestas pude solucionarlo colocando el script antes de la peticion a ajax....

pero me surgió otra duda...

tengo entendido q
document.getElementById('miSelect').innerHTML='<option>valorA</option><option>valorB</option>';
con esto puedo modificar un select con el evento onchange.... pero si los option quieor traermelos de una BD, es posible hacer un while colocando cada option en el innerhtml? o s enecesita hacer de otra manera... ya probe, pero aún no me sale...

basickdagger

bueno ya solucione mi problema utilizando ajax para hacer las cargas de un select a otro..., el problema era q había un conflicto con un javascript, entonces ya quedo... muchas gracias