我知道我可以使用 Wicket 6+ 订阅事件,这就是我在我的应用程序中所做的。现在我正在尝试在特定情况下取消 Ajax 事件,例如:
Wicket.Event.subscribe('/ajax/call/before', function (jqEvent,
attributes,
jqXHR,
errorThrown,
textStatus) {
if(someCondition) {
// Abort event, but how?
}
});
我正在寻找一种中止事件的方法,但是普通的 jQuery 事件处理程序
jqEvent.stopImmediatePropagation();
jqEvent.preventDefault();
甚至
attributes.event.stopImmediatePropagation();
attributes.event.preventDefault();
但它们似乎不起作用。如果该方法返回一个值,这似乎也没有效果。到目前为止,我发现的最简单的方法就是抛出一个异常,但这个解决方案远非干净。