繁体   English   中英

js按钮单击未检测到

[英]js button click not detected

我创建了一个div,当单击该div时,会弹出一个消息框,其中包含“是”和“否”按钮。

 var Abutton = document.createElement("div");
                Abutton.className = "Abutton";
                Abutton.onclick = function () {
                    new Messi(
                        'Are you sure you want to close your job?',
                        {
                            title: 'Are you sure?',
                            buttons: [
                                {id: 0, label: 'Yes', val:'Y' , class: 'deleteJob'},
                                {id: 1, label: 'No', val: 'N', class: 'cancelAction'}

                            ]
                        }
                    );
                };
                Abutton.title = "Closed?";
                Abutton.appendChild(document.createTextNode("Close Job"));
                li.appendChild(Abutton);

下面的“是”按钮与此功能相关。 但是当我单击时,什么也没有发生。 日志语句也未显示。

  $(".deleteJob").click(function(){
           deleteJob();
           console.log("heelo");
    });

为什么不起作用?

不确定仅基于此代码,但deleteJob按钮是动态添加的,在添加click事件时可能不存在。 您可能应该在父元素上使用事件委托。 根据您的代码,这就是li元素。 如果它是<ul>一部分,则可以像下面这样放置click事件:

$(function(){
  $('ul').on('click','.deleteJob', function(){
    deleteJob();
    console.log('hello');
  });
});

同样,不能100%确定没有看到其余代码。 但是无论哪种方式,事件委托都是要走的路。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM