首页 > 解决方案 > 使用角度表单组是否有获取表单事件流的方法

问题描述

每次在表单组绑定控件上发生模糊事件时,我都想执行一个操作。

我已经看到了 onBlur 验证,它是一个选项。但我不想将表单控件更新事件限制为模糊。人们可以将光标留在输入中并使用按键控件提交表单。

类似于可观察的事件,我将获得表单组用于执行其内部控制的事件流。过滤类型(如果“模糊”)并调用我的函数将是理想的。

有这样的吗?

此外,我不想直接在模板中使用来自 DOM 元素的模糊绑定。制作和维护这将是很多额外的工作。

标签: angularjs

解决方案


基本上在 vanilla JavaScript 中,您可以通过以下方式将事件侦听器注册到该目标元素addEventListener()

var formInputElement = document.getElementById("myForm");

formInputElement.addEventListener("focus", myFocusFunction);
formInputElement.addEventListener("blur", myBlurFunction):
formInputElement.addEventListener("focusin", myFocusFunction);
formInputElement.addEventListener("focusout", myBlurFunction);

这些将调用作为事件类型(例如,由 标识的事件类型)的侦听器(回调函数)传入的函数。myBlurFunctionblur


推荐阅读