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

Javascript 动态添加未注册的选择更改事件,javascript,jquery,ajax,onchange,html-select,Javascript,Jquery,Ajax,Onchange,Html Select,在我的网站中,我有如下代码:- $(function() { $(document).on('change', 'select', function() { var formID = $(this).attr("id"); if((formID.indexOf("forms[")>-1)){ var newFormID= $(this).val();

在我的网站中,我有如下代码:-

    $(function() {
        $(document).on('change', 'select', function() {
            var formID = $(this).attr("id");
                if((formID.indexOf("forms[")>-1)){

                var newFormID= $(this).val();
                var scenarioID = ${testScenarioInstance?.id}
                getFormInformation(newFormID, "forms", $(this), scenarioID);
            }
        });
    });

在页面的另一部分,用户可以通过简单的post和append添加额外的选择。问题是,对于任何新添加的select,这段代码都不会触发,但对于页面加载时存在的任何select,它都可以正常工作。你知道这是为什么吗?

它现在应该可以很好地工作,在这里,我用你的相同代码为这次活动做了一个小例子:


您正在使用哪个版本的jQuery?它应该可以工作。您能为这个做些修改吗?作为旁注:您不需要将它包装在文档就绪处理程序中。但是无论如何,您的代码应该是有效的。请确保在包含包含此代码所在的文件之前包含jquery文件,否则它将不起作用。只是给你一个指针,因为这段代码已经更正了var
scenarioID
是wierd..我很抱歉我是个傻瓜,当我创建一个新页面时加载的页面与我编辑时加载的页面有不同的html,我甚至没有将这段代码放入创建页面!毫不奇怪,当代码实际存在时,它工作良好!
$(document).on('change', 'select', function () {
    alert("Works well");
});