是否有可能触发DOM事件并使其在DOM树中停止运行?

时间:2013-03-21 13:37:00

标签: javascript jquery jquery-ui

当前dom事件模型将事件从叶节点(事件源)传播到顶层根(文档)。

我的问题是:有没有办法向后触发事件?从身体上,让它沿着dom走向树叶?

我想禁用表单中的所有表单输入。它们都是jquery ui小部件。我没有在主窗体组件中保留元素的引用,当我提交时,我想要禁用所有这些元素。我的所有小部件都绑定到一个名为“field:disable”的自定义dom事件。

2 个答案:

答案 0 :(得分:0)

事件只能从一个叶子到另一个叶子,而不是相反。

您应该确定所有小部件都具有的公共类,然后手动触发事件:

$('.ui-widget').trigger('field:disable');

答案 1 :(得分:0)

jQuery does not support event capturing,所以我认为你被事件冒泡困住了。

你为什么不这样做

$('#form input').trigger('field:disable')

如果您不想宣传该活动

$('#form input').triggerHandler('field:disable')