KCo*_*deR 0 javascript microsoft-dynamics dynamics-crm-2011
尝试使价格表格和价格项目形式只读并使用下面的java脚本但是会出现以下错误; 此记录的其中一个脚本导致错误.有关更多详细信息,请下载日志文件.TypeError:control.getDisabled不是makeFieldsReadOnly的函数
使用Dynamics CRM 2016,这个JS在表单的加载下运行
function onLoad() {
var formType = Xrm.Page.ui.getFormType();
if (formType == 2)
makeFieldsReadOnly(); }
function makeFieldsReadOnly() {
var controls = Xrm.Page.ui.controls.get();
for (var i in controls) {
var control = controls[i];
if (!control.getDisabled()) {
control.setDisabled(true);
}
} }
Run Code Online (Sandbox Code Playgroud)
有关为何可能失败的任何建议,在CRM 2011中运行良好吗?
小智 6
并非所有正在迭代的控件都被禁用,因此代码失败.当它尝试getDisabled在没有声明此函数的控件上执行时会抛出错误.
这可以通过检查控件上是否存在必要的功能来解决:
function onLoad() {
var formType = Xrm.Page.ui.getFormType();
if (formType == 2)
makeFieldsReadOnly(); }
function makeFieldsReadOnly() {
var controls = Xrm.Page.ui.controls.get();
for (var i in controls) {
var control = controls[i];
if (control.getDisabled && control.setDisabled && !control.getDisabled()) {
control.setDisabled(true);
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2184 次 |
| 最近记录: |