JQuery委托命令似乎不起作用

JQuery委托命令似乎不起作用,jquery,jquery-delegate,Jquery,Jquery Delegate,我有一个字段集,它包含一堆输入元素,当显示给用户时,它最初是折叠的。我想在字段集中包含的下拉列表中附加一个事件处理程序,但我似乎在完成此操作时遇到了问题。我使用的是jQuery 1.5,下面是我使用的代码: // Add a change listener to the specified select box. $(document).delegate("select[name='type_config[format]']", 'change', function() { var se

我有一个字段集,它包含一堆输入元素,当显示给用户时,它最初是折叠的。我想在字段集中包含的下拉列表中附加一个事件处理程序,但我似乎在完成此操作时遇到了问题。我使用的是jQuery 1.5,下面是我使用的代码:

// Add a change listener to the specified select box.
$(document).delegate("select[name='type_config[format]']", 'change', function() {
    var selectedValue = $("select[name='type_config[format]']").find(":selected").val();
    console.log("the value you selected: " + selectedValue);
});

我认为使用委托可以实现这一点,因为下拉列表最初不可见。但是,当我更改下拉列表中的选择时,什么都不会发生。我知道选择器是正确的,因为当下拉列表可见时,我在控制台中对其进行了测试。知道我做错了什么(或者我可能忽略了什么)?

我一眼就看不到任何错误,但是如果下拉列表存在但不可见,您应该能够使用传统绑定:
$(“选择[name='type_config[format]'])。更改(function(){…})
您的代码在JSFIDLE中工作: