未检测到js按钮点击

js button click not detected

本文关键字:按钮 js 检测      更新时间:2023-09-26

我创建了一个div,当点击它时,会弹出一个带有"是"answers"否"按钮的messi框。:

 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按钮是动态添加的,在添加单击事件时可能不存在。您可能应该对父元素使用事件委派。根据您的代码,这是li元素。如果它是<ul>的一部分,可以像这样放置点击事件:

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

同样,如果没有看到代码的其余部分,就不能100%确定。但无论哪种方式,活动授权都是可行的。