Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未调用Combobox事件_Javascript_Jquery - Fatal编程技术网

Javascript 未调用Combobox事件

Javascript 未调用Combobox事件,javascript,jquery,Javascript,Jquery,点击一个按钮,显示一个组合框,选择一个组合框。 未调用更改事件 请让我知道我在哪里犯错 <html> <head> <script src="jquery17.js" type="text/javascript"></script> <script> $("select").change(function(){ alert(this.id); }); $(document).ready(function()

点击一个按钮,显示一个组合框,选择一个组合框。 未调用更改事件

请让我知道我在哪里犯错

<html>
<head>
<script src="jquery17.js" type="text/javascript"></script>
<script>
  $("select").change(function(){
        alert(this.id);
    });

$(document).ready(function(){
  $("button").click(function(){
   var s = $('<select />');
   var data = {
    'foo': 'bar',
    'foo2': 'baz'
}
for(var val in data) {
   $('<option />', {value: val, text: data[val]}).appendTo(s);
}
s.appendTo('body');
 });
});
</script>
</head>
<body>
<div id="div1"></div>
<button>Get External Content</button>
</body>
</html>

$(“选择”).change(函数(){
警报(this.id);
});
$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
var s=$('');
风险值数据={
‘foo’:‘bar’,
‘foo2’:‘baz’
}
for(数据中的var val){
$('',{value:val,text:data[val]});
}
s、 附属于(“主体”);
});
});
获取外部内容
由于
标记是动态附加的,所以您必须在其上委派事件

$("select").change(function(){
    alert(this.id);
});
由于
标记是动态附加的,所以您必须在其上委派事件

$("select").change(function(){
    alert(this.id);
});
问题是您没有在
$(document).ready(function(){
块中执行此操作

将其移动到其中,否则将在尚不存在的DOM元素上设置事件处理程序

问题是您没有在
$(document).ready(function(){
块中执行此操作


将其移动到其中,否则您将在尚不存在的DOM元素上设置事件处理程序。

您必须将其放置在
doc ready
中,但在将它们附加到body之后,是动态的,因此将事件委托给
最近的父元素
document
本身,后者是所有事件的父元素

<script>
  $(document).ready(function(){
      $("button").click(function(){
           var s = $('<select />');
           var data = {
                 'foo': 'bar',
                 'foo2': 'baz'
            }
           for(var val in data) {
               $('<option />', {value: val, text: data[val]}).appendTo(s);
            }
          s.appendTo('body');
       });

       // you need to place that here.
             $(document).on('change', 'select', function(){
                 alert(this.id);
             });

    });

$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
var s=$('');
风险值数据={
‘foo’:‘bar’,
‘foo2’:‘baz’
}
for(数据中的var val){
$('',{value:val,text:data[val]});
}
s、 附属于(“主体”);
});
//你需要把它放在这里。
$(文档).on('change','select',function(){
警报(this.id);
});
});

您必须将其放置在
doc ready
中,但在将其附加到body之后,是动态的,因此将事件委托给
最近的父元素
文档
本身,它是所有事件的父元素

<script>
  $(document).ready(function(){
      $("button").click(function(){
           var s = $('<select />');
           var data = {
                 'foo': 'bar',
                 'foo2': 'baz'
            }
           for(var val in data) {
               $('<option />', {value: val, text: data[val]}).appendTo(s);
            }
          s.appendTo('body');
       });

       // you need to place that here.
             $(document).on('change', 'select', function(){
                 alert(this.id);
             });

    });

$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
var s=$('');
风险值数据={
‘foo’:‘bar’,
‘foo2’:‘baz’
}
for(数据中的var val){
$('',{value:val,text:data[val]});
}
s、 附属于(“主体”);
});
//你需要把它放在这里。
$(文档).on('change','select',function(){
警报(this.id);
});
});