Javascript 处理所有DevExtreme输入小部件的更改事件
我正在寻找一种方法来跟踪表单字段是否已使用DevExtreme组件进行了修改。我想我可以用一个事件侦听器绑定所有这些事件:Javascript 处理所有DevExtreme输入小部件的更改事件,javascript,jquery,devexpress,devextreme,Javascript,Jquery,Devexpress,Devextreme,我正在寻找一种方法来跟踪表单字段是否已使用DevExtreme组件进行了修改。我想我可以用一个事件侦听器绑定所有这些事件: $('input').change(function () { console.log("Change detected."); }); 虽然这会激发普通的元素,但DevExtreme组件(它们都使用底层隐藏的元素)不会。组件有一个onValueChanged字段,可以分配一个函数,但其思想是不必对每个控件都这样做。我有几十张表格,包括dxTextBox,dxSe
$('input').change(function () {
console.log("Change detected.");
});
虽然这会激发普通的
元素,但DevExtreme组件(它们都使用底层隐藏的
元素)不会。组件有一个onValueChanged
字段,可以分配一个函数,但其思想是不必对每个控件都这样做。我有几十张表格,包括dxTextBox
,dxSelectBox
,dxDateBox
,等等
使用delegate()方法附加的事件处理程序将适用于当前和将来的元素(如脚本创建的新元素)
我会推荐这种用法,即使它已被弃用,也会有所帮助
使用delegate()方法附加的事件处理程序将适用于当前和将来的元素(如脚本创建的新元素)
我建议使用这种方法,即使不推荐使用,也会有所帮助。DevExtreme小部件提供了这种方法,允许为特定组件设置默认配置选项 例如:
DevExpress.ui.dxTextBox.defaultOptions({
device: { deviceType: "desktop" },
options: {
onValueChanged: function(e) {
console.log("Change detected.");
}
}
});
DevExtreme小部件提供了该方法,允许为特定组件设置默认配置选项 例如:
DevExpress.ui.dxTextBox.defaultOptions({
device: { deviceType: "desktop" },
options: {
onValueChanged: function(e) {
console.log("Change detected.");
}
}
});
这就是我最终使用的,必须为您使用的每个小部件类型执行此操作,因此重复
dxNumberBox
,dxDateBox
,等等。可以通过为每个小部件分配相同的选项来简化代码。这就是我最终使用的,必须为您使用的每种小部件类型执行此操作,因此对dxNumberBox
、dxDateBox
等重复此操作。可以通过为每个小部件指定相同的选项来简化代码。