在使用ajax响应操纵dom之后如何附加所有事件。我有一个ajax请求,它获取一个html响应,该响应基本上是html的一个片段。该片段HTML有很多按钮。我想刷新dom,以便将先前声明和附加的事件也应用于该片段。我不想继续使用jquery on()为每个按钮添加每个事件。还有其他办法吗?
您可以使用预先设置的委托事件处理,并且可以将其应用于新添加的DOM元素。委托事件处理通过以下方式完成,.on()通常采取以下形式:
.on()
$("static parent selector").on('click', 'selector for dynamic element', fn);
没有干净的方法可以再次运行事件安装代码,并且仅将其应用于新添加的DOM元素。您将不得不将该代码放入函数中并对其进行编码,以使它永远不会添加事件处理程序超过一次,然后在将项目添加到DOM之后可以再次调用该函数。或者,您可以使函数接受父对象的参数,而仅在新添加的DOM层次结构中添加事件处理程序。