It looks like an ajax update is occurring for the element that is the source of the event. In the past we have resolved this with the following strategy:
+++ src/main/javascript/application.js (working copy)
@@ -108,6 +108,15 @@
}
function formOf(element) {
+ try
{
+ return formOfNode(element);
+ }
catch (e)
{
+ //page update may have occurred
+ return formOfNode(document.getElementById(element.id));
+ }
+ }
+
+ function formOfNode(element)
{
return toLowerCase(element.nodeName) == 'form' ? element : enclosingForm(element);
}
This fixes the test case. In the past, DOM operations in the middle of ajax updates have been found to be highly browser-dependent.
The stopBlockingUI callback defined to run on onAfterUpdate is never executed.
The pre-request callback to setup the stopBlockingUI callback runs correctly though.