Установить видимую вкладку или раздел в динамике crm 2011

Я немного смущен, как использовать эту функцию. Я хотел бы скрыть/показать вкладку и раздел, используя эту логику.

function setVisibleTabSection(tabname, sectionname, show) {
   var tab = Xrm.Page.ui.tabs.get(tabname);
   if (tab != null) {
      if (sectionname == null)
         tab.setVisible(show);
      else {
         var section = tab.sections.get(sectionname);
         if (section != null) {
             section.setVisible(show);
             if (show)
                tab.setVisible(show);
         }
      }
    }
 }

Я не понял, как правильно вызвать функцию.

Я создал эту функцию, также вкладку ("tab_8"), название секции ("tab_8_section_1"), где я разместил текстовое поле ("new_conf_report").

после этого я вызываю эту функцию (там же, где был написан код) как setVisibleTabSection("tab_8", "tab_8_section_1", false); более того, я называю эту функцию событием "onLoad"

однако я получил следующие ошибки:

 " var tab = Xrm.Page.ui.tabs.get(tabname); "'Xrm.Page.ui.tabs' - IS null or it isn't object  

  "tab.setVisible(show); " Object doesn't support this method 

заранее спасибо


person Leo    schedule 22.03.2013    source источник


Ответы (1)


Вы можете отлаживать свой код. Просто поместите слово отладчик в код JS. Когда вы запускаете форму, нажмите F12, во вкладке «Скрипт» нажмите «начать скрипт», и вы сможете шаг за шагом понять, как работает код.

Если вы передаете строки, вы должны вызывать их следующим образом:

setVisibleTabSection("tab", "Sectname", false);
person Pedro Azevedo    schedule 22.03.2013
comment
выдал 2 ошибки, думаю проблема с названием вкладки var tab = Xrm.Page.ui.tabs.get(tabname); 'Xrm.Page.ui.tabs' - IS null или это не строка объекта tab.setVisible(show); Объект не поддерживает этот метод - person Leo; 25.03.2013
comment
Привет. Можете ли вы обновить свой пост и установить полный вызов метода и то, как вы вызываете этот метод. - person Pedro Azevedo; 25.03.2013
comment
Лео, я проверю код, но лучше всего создать еще один вопрос, потому что на него есть ответ, и другие пользователи не откроют. - person Pedro Azevedo; 25.03.2013