0

我有一个 id 为“wizard”的表单——我只有这个表单中的选择元素。此表单位于使用JQuery 插件 fancybox的灯箱中:

我想知道何时使用 JQuery 更改了这些中的任何一个。我怎样才能做到这一点?我目前有:

$('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);
});

编辑- 我有上面的包裹$(document).ready(function() {...}

但是,它不起作用,甚至无法运行。我已经在里面放了警报,但它们从来没有出现过。仅当以上是我已删除 display:none 的 div 时,以上才有效,奇怪!所以我正在寻找一种不同的实现来解决这个问题,因为我需要那个灯箱。

我真的需要这方面的帮助。

谢谢大家

4

1 回答 1

5

jQuerychange函数仅绑定在 domready 事件触发时存在的那些元素。如果您使用的灯箱插件是动态创建元素,您应该使用 jQuery 的live函数来“将您的处理程序绑定到所有当前和未来匹配的元素”。

改变这个:

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

有了这个:

$('your selector').live('change', function() { /* code ... */ });
于 2009-10-11T18:40:17.830 回答