MS CRM - setVisible

我只是一个虾纸丫 提交于 2019-12-01 05:19:38

问题


I am newbie with CRM and I was googling for how to hide and show a text field using jScript library in MS CRM (online) and found several options of using the function setVisible.

I tried those options:

  1. Xrm.Page.ui.tabs.get('new_fieldname').setVisible(false);
  2. Xrm.Page.data.entity.attributes.get('new_fieldname').setVisible(false);
  3. Xrm.Page.getAttribute('new_fieldname').controls.get(0).setVisible(false);

But only the last one is really working. The first option gives me an error message.

What is the different between them?


回答1:


Just to add to the points already made..

The difference between

Xrm.Page.ui.tabs.get('new_fieldname').setVisible(false);

And

Xrm.Page.getAttribute('new_fieldname').controls.get(0).setVisible(false);

The first refers to a tab (Xrm.Page.ui.tabs), the second refers to an attribute (Xrm.Page.getAttribute).

So if you wanted to hide a whole tab, its sections and fields you can use the first one. If you want to just hide an individual field you can use

Xrm.Page.getControl("new_fieldname").setVisible(false);

Which is itself a shortcut from

Xrm.Page.ui.controls.get('new_fieldname').setVisible(false);



回答2:


to hide a text field the right method is this:

Xrm.Page.getControl("new_fieldname").setVisible(false);



回答3:


The attributes are the data, the controls are the HTML Dom objects. You don't tell the data to hide, you tell the control that is displaying the data to hide.




回答4:


Besides using JavaScript to show/hide field you can use Business Rule to do the same job also CRM platform built to make things easier so when you want to do anything in CRM you must think about it with this order:

  1. Out of the box.
  2. Customization.
  3. Business Rule.
  4. Workflow.
  5. JavaScript.
  6. Plugin-Workflow Activity.


来源:https://stackoverflow.com/questions/16634017/ms-crm-setvisible

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!