Pregunta

tengo un formulario con un id de "asistente" - Sólo tengo los elementos seleccionados en este formulario. Esta forma está en una caja de luz usando el plugin de jQuery FancyBox :

Quiero saber cuando cualquiera de ellos se han cambiado usando jQuery. ¿Cómo puedo hacer esto? Actualmente tengo:

$('form#wizard select[name=servers], form#wizard select[name=cores]').change(function() {
var channels = parseInt($('form#wizard select[name=servers]').val(), 10) * parseInt($('form#wizard select[name=cores]').val(), 10);
$('#yellow').val(channels);
});

editar - He lo anterior envuelta en $(document).ready(function() {...}

Sin embargo, esto no funciona, que ni siquiera llega plazo. He puesto en alerta allí y que nunca apareció. Lo anterior sólo funciona cuando el anterior es un div que he eliminado el display: none de, extraño! Así que estoy buscando para una implementación diferente de evitar esto, ya que necesito que caja de luz tal como es.

Realmente necesito ayuda en esto.

Gracias a todos

¿Fue útil?

Solución

La función change jQuery sólo se une aquellos elementos que están presentes cuando se activa el evento domready. Si el plugin caja de luz que está utilizando está creando dinámicamente elementos, usted debe utilizar la función live de jQuery a "vincular a su manejador de toda la corriente - y el futuro igualada elementos".

Cambiar esto:

$('your selector').change(function() { /* code ... */ });

con esto:

$('your selector').live('change', function() { /* code ... */ });
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top