jquery更改事件未注册动态添加的选择

时间:2013-04-18 09:58:09

标签: jquery select dynamic

希望有人可以提供帮助,当有人更改选择时,我有一些点头的jquery开始,其内容如下: -

$(function() {
    $("select").change(function() {
        var banana = $(this).attr("id");

        if((banana.indexOf("forms[")>-1)){
            var formID= $(this).val();
            getFormInformation(formID);
        }
    });
});

这适用于首次加载时页面上显示的所有选项,但是,我还有一些jQuery,它会动态地为带有帖子的页面添加额外的选择,而不是为那些选择它,任何想法?

提前致谢!

3 个答案:

答案 0 :(得分:0)

变化:

$("select").change(function() { 

要:

$(document).on("change", "select", (function() {

答案 1 :(得分:0)

使用'on'代替http://api.jquery.com/on/

$(function() {
  $('body').on('change','select', function() {
        var banana = $(this).attr("id");

        if((banana.indexOf("forms[")>-1)){
            var formID= $(this).val();
            getFormInformation(formID);
        });
});

答案 2 :(得分:0)

您需要将事件处理程序附加到动态附加的元素。使用jQuery.on()方法将事件处理程序附加到jQuery object中当前选定的元素集。从jQuery 1.7开始,.on()方法提供了附加事件处理程序所需的所有功能。

这可能会对您有所帮助:

$(document).on('click','select',function(){
    alert("click");
});

另请查看.on() documentation