首页 > 解决方案 > 处理所有 DevExtreme 输入小部件的更改事件

问题描述

我正在寻找一种方法来跟踪表单字段是否已使用 DevExtreme 组件进行了修改。我想我可以用一个事件监听器绑定所有这些:

$('input').change(function () {
    console.log("Change detected.");
});

虽然这会触发普通<input>元素,但 DevExtreme 组件(它们都使用底层隐藏<input>元素)不会。组件有一个onValueChanged可以分配功能的字段,但想法是不必对每个控件都这样做。我有几十个dxTextBox, dxSelectBox,dxDateBox等的表格。

标签: javascriptjquerydevexpressdevextreme

解决方案


使用 delegate() 方法附加的事件处理程序将适用于当前和未来元素(如脚本创建的新元素)。

我会推荐jQuery Delegate用于这种用法,即使它已被弃用,它也会有所帮助。


推荐阅读