Question

I have a weird recursive situation.

I am changing some HTML inside a element with a small widget and HTML5 contenteditable.

I binded on that element some events such as:

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

Those events trigger some AJAX call that on success also modifies the same element.

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

But the thing is, this also triggers those binded events on the element. And then i get a unstoppable ajax recursion.

Is it possible to do something like

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

as in, don't trigger any of the binded events triggers?

Was it helpful?

Solution

No.

Instead, you can unbind the handlers while you update the element, or set a flag while updating and check for that flag in the handler and do nothing.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top