这节介绍onchange事件的编程,在前面的章节中提过:Dynamics CRM 脚本编程基本上是围绕3个点来进行开发的。它们分别是:onload,onsave,onchange。onchange事件是正对“实体”属性的,和Javascript中的onchange事件一样,都是在控件值发生改变时而触发的。
接下来我们就简单定义一个onchange事件吧,这次我们依然选择“客户”实体进行开发。
我们为“客户”实体的属性“主要电话”添加onchange事件,该事件的职责为:如果“主要电话”的值不为空,就将“主要电话”中的值自动赋给属性“其他电话”和属性“传真”。
具体操作如下:

图4-1

图4-2

图 4-3

图 4-4

图 4-5

图 4-6 编辑“onchange”事件触发时需要调用的函数。

图 4-7

图4-8 为属性“主要电话”添加onchange事件

图 4-9 为“主要电话”添加完onchange事件后,回到表单编辑窗口进行“保存”和“发布”操作。

图 4-10

图 4-11
该节涉及的代码:
function telephone1_onchange() { //获取属性"主要电话"的值 var telephone1=Xrm.Page.getControl("telephone1").getAttribute().getValue(); //获取属性"其他电话"在表单中的控件 var telephone2=Xrm.Page.getControl("telephone2"); //获取属性"传真"在表单中的控件 var fax=Xrm.Page.getControl("fax"); if(telephone1 != null) { //赋值 telephone2.getAttribute().setValue(telephone1); fax.getAttribute().setValue(telephone1); } }小结:按照上图的顺序操作下来就可以为“主要电话”添加一个onchange事件了。在日常的开发中,onchange事件常用来验证输入是否正确或保证表单上某“属性值”的准确性。如:A+B=C,为A和B添加onchange事件来保证公式"A+B"的准确性。
本文详细介绍了如何在DynamicsCRM中使用onchange事件为实体属性添加自动化功能,以实现数据自动填充。通过具体实例,展示了如何在客户实体的‘主要电话’属性上添加onchange事件,使其自动更新‘其他电话’和‘传真’属性的值。此技巧在日常开发中常用于验证输入和保证表单数据的一致性。
1034

被折叠的 条评论
为什么被折叠?



