当前正在使用JavaScript进行CRM,我想在整个表单上触发onChange事件,而不仅仅是在字段上触发,我进行了搜索,但找不到解决方案.. 你知道这样做的方法吗?
答案 0 :(得分:0)
如果要检测表单上任何字段的onChanage事件,我认为唯一受支持的方法是在表单上的每个字段上添加onChange。但是我知道,如果您有数百个字段,则可能需要一些时间:)
$( "input[type='text']" ).change(function() {
somethingIsChanged=true;
});
准备选择器以检测所有CRM表单字段。不支持以这种方式在CRM表单上选择字段。
编辑:
实际上,我在第一句话中部分错了。有一种很好而优雅的支持方法可以解决此问题。添加Javascript网络资源,例如:
function onPageLoadFunction()
{
Xrm.Page.ui.controls.forEach(function (control, index) {
switch (control.getControlType()) {
case "standard":
case "lookup":
case "optionset":
var attribute = control.getAttribute();
if (attribute != null) {
attribute.addOnChange(openAlertOnChange);
}
break;
}
});
}
function openAlertOnChange()
{
alert("ON CHANGE alert");
}
在表单设计器中,将函数“ onPageLoadFunction ”设置为在表单加载时被调用。如果指定类型的任何字段(标准,查找,选项集)发生更改,您将收到来自函数“ openAlertOnChange ”的警报。干杯!
答案 1 :(得分:0)