jquery更改事件未注册动态添加的select
希望有人能提供帮助,当有人更改select时,我会启动一些noddy jquery,如下所示:-jquery更改事件未注册动态添加的select,jquery,select,dynamic,Jquery,Select,Dynamic,希望有人能提供帮助,当有人更改select时,我会启动一些noddy jquery,如下所示:- $(function() { $("select").change(function() { var banana = $(this).attr("id"); if((banana.indexOf("forms[")>-1)){ var formID= $(this).val(); getFormInfo
$(function() {
$("select").change(function() {
var banana = $(this).attr("id");
if((banana.indexOf("forms[")>-1)){
var formID= $(this).val();
getFormInformation(formID);
}
});
});
这适用于第一次加载页面时页面上出现的所有选择,但是,我也有一些jQuery,它会在页面上动态添加额外的选择,并且不会为这些选择拾取,有什么想法吗
提前谢谢 变化:
$("select").change(function() {
致:
用“开”代替
您需要将事件处理程序附加到动态附加的元素。使用
jQuery
,.on()
方法将事件处理程序附加到jQuery对象中当前选定的元素集。从jQuery 1.7
开始,.on()
方法提供附加事件处理程序所需的所有功能
这可能会帮助您:
$(document).on('click','select',function(){
alert("click");
});
还可以查看.on()
您需要将事件处理程序附加到动态附加的元素。检查下面的答案。当我使用行$(文档)尝试此操作时。在(“更改”、“选择”和(函数()上){
下面由Chris善意提供,它根本不起作用…:/有任何错误吗?如果有,请毫不犹豫地在这里发布。这也不起作用,但奇怪的是,当我在使用我的帖子添加另一个内容后查看页面源时,选择它根本不显示在页面源中(尽管我可以在firebug等中看到它的详细信息),它是否应该显示,这可能是原因吗?这可能是原因吗?如果是,我是否可以更改我正在添加的html,以便新的下拉菜单触发此更改功能?感谢迄今为止的帮助!结果是它不适用于$('body'),而适用于$(document),为什么我不知道…很抱歉,当我这样做时,什么都没有发生,甚至对于开始时的选择…它甚至没有调用函数,我只是通过发出警报(“hello world”)来检查该函数在那里,看看它是否被拾起……:/但是,看看我刚刚组装的这个JSFIDLE,它确实工作了……啊哈,我发现了问题,您非常友好地给了我替换行,但有一个错误”(“之前我没有发现停止它工作的函数,现在非常感谢!!:)
$(function() {
$('body').on('change','select', function() {
var banana = $(this).attr("id");
if((banana.indexOf("forms[")>-1)){
var formID= $(this).val();
getFormInformation(formID);
});
});
$(document).on('click','select',function(){
alert("click");
});