javascript - 更改 html PreventDefault

标签 javascript jquery ajax dom preventdefault

我有一个奇怪的递归情况。

我正在使用一个小部件和 HTML5 contenteditable 更改元素内的一些 HTML。

我在该元素上绑定(bind)了一些事件,例如:

$('.myelement).on('DOMNodeInserted DOMNodeRemoved DOMCharacterDataModified', ..

这些事件会触发一些 AJAX 调用,成功后也会修改相同的元素。

$('.myelement').html(new_value)

但问题是,这也会触发元素上的那些绑定(bind)事件。然后我得到了一个不可阻挡的ajax递归。

是否可以做类似的事情

$('.myelement').html(new_value).preventDefault()

例如,不触发任何绑定(bind)事件触发器?

最佳答案

没有。

相反,您可以在更新元素时​​取消绑定(bind)处理程序,或者在更新时设置一个标志并在处理程序中检查该标志而不执行任何操作。

关于javascript - 更改 html PreventDefault,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19229303/

相关文章:

javascript - 如何根据 bool 属性对对象数组进行排序?

javascript - 使用像 fiddler 一样的代理和 fetch api

jquery - 如何编写绕过 css !important 标签

javascript - 停止重新加载 ajax 提交的表单

javascript - 从 JQuery 中的多个表单中选择表单

javascript - 如何在 jQuery 中存储多个输入图像的元素?

javascript - 当页面在移动设备上滚动得太远时,DOM 中会发生什么?

jquery - 如何在页面加载时显示加载图像时添加计时

javascript - 现在我已将内容发布到 PHP 脚本中,如何获取它?

php - 使用数据表导出到excel时将数字转换为字符串