快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱h188下载app_机器人论坛



一个Form里常常会有好几个Tab,无意偶尔要根据一些前提设置哪些Tab可用,可见。下面就先容下若何用JS对Tab进行节制。

1. 节制可见

function setTabVisableByName(tabName, flag) {

var control = Xrm.Page.ui.tabs.get(tabName);

control.setVisible(flag);

}

这里flag是true或false

2. 节制可用

看了上面的可见代码,是不因此为可用也这么简单呢?着实我们把上面的setVisible改成setDisabled,会报错:

control.setDisabled is not a function

先看下Xrm.Page 的工具层次布局:

可以看到 tabs –> sections –> cont和记娱h188下载approls 这个层次布局。

于是就写了下面的代码:

function disableT和记娱h188下载appab(tabName, flag) {

debugger;

var sections = Xrm.Page.ui.tabs.get(tabName).sections.get();

for (var j in sections) {

var controls = sections[j].controls.get();

for (var i in controls) {

var control = controls[i];

var controlType = control.getControlType();

if (controlType != "iframe" && controlType != "webresource" && controlTyp和记娱h188下载appe != "subgrid") {

if (control != null && control.getDisabled() == !flag) {

control.setDisabled(flag);

}

}

}

}

}

此中有一行是判断control的类型:

if (controlType != "iframe" && controlType != "webresource" && controlType != "subgrid") {

这行代码是后来加上的,由于当时呈现了一个很稀和记娱h188下载app罕的征象,新建或查看记录时,没问题,但新建保存时老是会报这个差错:

control.setDisabled is not a function

加上这行后就ok了,这和记娱h188下载app个问题当时花了我好长光阴。

假如是要把全部form都禁用呢,可以用下面的代码,更简洁:

Xrm.Page.ui.controls.forEach(function (control, index) {

var controlType = control.getControlType();

if (controlType != "iframe" && controlType != "webresource" && controlType != "subgrid")) {

control.setDisabled(flag);

}

});

您可能还会对下面的文章感兴趣: