在Javascript动态创建的按钮上调用jQuery函数

在Javascript动态创建的按钮上调用jQuery函数,javascript,html,jquery,angularjs,angular,Javascript,Html,Jquery,Angularjs,Angular,在Angular中,我使用JavaScript在调用函数时自动向able添加新行,这是在加载HTML之后完成的 在表格的每一行中都有一个包含按钮的单元格 我想在动态创建的按钮上使用jQuery,但由于它们不是初始HTML的一部分,因此从未调用jQuery函数 我尝试使用所有的Angular lifecycle钩子来查看其中是否有一个可以工作,但没有一个可以 这是我希望在单击按钮时运行的jQuery的一个示例: $( ".deleteButton" ).on("cli

在Angular中,我使用JavaScript在调用函数时自动向able添加新行,这是在加载HTML之后完成的

在表格的每一行中都有一个包含按钮的单元格

我想在动态创建的按钮上使用jQuery,但由于它们不是初始HTML的一部分,因此从未调用jQuery函数

我尝试使用所有的Angular lifecycle钩子来查看其中是否有一个可以工作,但没有一个可以

这是我希望在单击按钮时运行的jQuery的一个示例:

$( ".deleteButton" ).on("click",function() {
    alert("this is a button button");
    });
这是如何创建按钮的JavaScript

var deleteButton = document.createElement('button');
     deleteButton.innerHTML = 'Delete';
     deleteButton.type = "button"; 
     deleteButton.className = "deleteButton";

cell4.append(deleteButton);

table.append(row);

我将非常感谢任何有关这方面的帮助

…还有一个将jQuery和Angular混合在一起的开发人员。请大家,@JeremyThille我只是一个正在努力完成家庭作业的学生。不必紧张。最好不要像@JeremyThille所说的那样混合使用不同的JS框架(如jQuery和Angular)。从jQuery的角度来看,我认为您需要的是一个委托事件处理程序。将单击事件处理程序绑定到
tbody
,而不是
.delete按钮
。让这件事发生吧。类似于
$(“tbody”)。在(“click”、“.deleteButton”、function(){…})
@jpllosa No.不要开始引入黑客和解决方法。如果您这样做,您的应用程序将是一个无法维护的摇摇欲坠的烂摊子。如果您正在学习Angular,那么步骤1是摆脱jQuery并使用Angular。另外,
document.createElement
.innerHTML
在Angular应用程序中也没有任何作用。这不是它的工作原理。如果希望元素基于数据有条件地显示,可以使用
*ngIf
。要附加click hanler,请使用
(click)=“clickHandler()”
,句点。或者去掉Angular,只使用jQuery。Angular应用程序中何时何地创建删除按钮?