今天我们来看看表单的onsave事件,顾名思义,onsave就是在表单保存的时候触发的事件,主要使用场景为:根据现有的表单内容,审核当前提交的保存请求是否符合业务规则,符合就正常保存,不符合就禁止保存。
接下来,我们使用一个小例子,来体验一下表单的onsave事件吧。这个例子主要的逻辑为:
保存的时候检查budgetAmount字段的值,是否大于10000,如果大于,正常保存,否则,弹出提示框说明输入的值不符合规则,并取消当前的保存操作。
第一步,按照添加onload函数中的步骤,打开opportunity表单编辑器,并添加onsave函数
第二步,选择高亮标识的选项,这个上下文参数后续会用来取消违法业务规则的保存事件
第三步,更新资源文件,并保存发布
实现后的效果
使用到的代码:
if(typeof(CRMHOME)=="undefined") { CRMHOME={}; } if(typeof(CRMHOME.Opportunity)=="undefined") { CRMHOME.Opportunity={}; } CRMHOME.Opportunity.Entity={ Form_Onload:function(){ debugger; Xrm.Utility.alertDialog("Hello form onload event"); } , Form_Onsave:function(eContext) { debugger; var budgetAmount=Xrm.Page.getAttribute("budgetamount").getValue(); if(budgetAmount<10000) { Xrm.Utility.alertDialog("Please input correct budget amount!"); eContext.getEventArgs().preventDefault(); } } }