Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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、Jquery、DOM_Javascript_Jquery_Dom - Fatal编程技术网

Javascript、Jquery、DOM

Javascript、Jquery、DOM,javascript,jquery,dom,Javascript,Jquery,Dom,在Html文档上添加按钮后,与之关联的jQuery事件是否不起作用 例如: $("#mydiv").append('<a href="#" id="mybutton">X</a>');//this is button appending $("#mybutton").click(function(){ alert("hello"); }); $(“#mydiv”).append(“”)//这是按钮附加 $(“#我的按钮”)。单击(函数(){ 警惕(“你好”);

在Html文档上添加按钮后,与之关联的jQuery事件是否不起作用

例如:

$("#mydiv").append('<a href="#" id="mybutton">X</a>');//this is button appending

$("#mybutton").click(function(){
    alert("hello");
});
$(“#mydiv”).append(“”)//这是按钮附加
$(“#我的按钮”)。单击(函数(){
警惕(“你好”);
});

假设调用
。在将
#mybutton
方法实际附加到
#mydiv
之前,您需要使用该方法,因为附加事件处理程序时按钮不存在:

$('#mydiv').on('click','#mybutton',function(){
    alert('hello');
});

应该可以…

为什么不在
附加
中设置
单击

这样,您就不必担心元素是否添加到文档流中,因为您将对实际的DOM元素变量设置事件回调:

$("#mydiv").append(
    $('<a href="#" id="mybutton">X</a>').click(function() {
        alert("hello");
    })
);
$(“#mydiv”).append(
$('')。单击(函数(){
警惕(“你好”);
})
);

您必须等待一个ms或2,或使用$(“#mydiv”)。在(“单击”、“我的按钮”上,…)这是您的实际代码(即这些行是否按顺序运行)?在这种情况下,您的文档中是否有多个元素与
#mybutton
匹配?对我有效:…它有效。如果没有,则可能是重复的如果代码是他发布的,他在附加处理程序之前添加元素,因此他不需要这样做。@Barmar事实上,我假设不是这样的,否则原始代码会工作…无论哪种方式,如果这是原因,那么问题应该作为重复的关闭,例如。我们真的不需要更多这些。