在onLoad事件中获取子网格控件

时间:2014-04-02 08:54:11

标签: javascript controls dynamics-crm-2013 subgrid

我尝试让子网格控件设置它是不可见的。这是我的代码

function OnReady(){
   var subgrid = document.getElementById("documents_subgrid");
   if (subgrid == null) {
       setTimeout(OnReady(), 1000);
       return;
   }
}

此代码适用于onLoad。它在CRM2011中有效,但在CRM2013中不起作用

请帮助

2 个答案:

答案 0 :(得分:0)

如果获得控件则更好,并使用.setVisible(“false”)。在2013年,控件的html改变了这可能是为什么js不起作用,因为你得到了一个可能不再存在的div的id。小心如何加载子网格有一些问题。

答案 1 :(得分:0)

我找到了解决方案

var timer = setInterval(function () { GetSubgrid(); }, 1000);
function GetSubgrid() {
    var div = document.getElementById("temp_subgrid");
    if (div != null) {
        clearInterval(timer);            
    }
}

将计时器设置为onload事件。