Попробуйте добавить событие нажатия на онлайн-управление CRM в Javascript с помощью XRM
Я пытаюсь добавить событие в поле в своем онлайн-контроле CRM.
Есть мой код для добавления... но ничего не работает. Есть ли способ сделать это?
Этот код выполняется на моем formLoad
var issueKey = Xrm.Page.getAttribute("myControl").getValue();
if (issueKey != "") {
Xrm.Page.getControl("myControl").onClick = function () {
window.open(BaseUrl, "_blank");
};
}
2 ответа
Решение
То, что вы просите сделать, не поддерживается ( https://msdn.microsoft.com/en-us/library/gg334481.aspx). И зовет Xrm.Page.getControl("myControl")
возвращает элемент управления XRM, а не объект DOM. У вас есть два варианта:
- Перейдите к крайне неподдерживаемым, добавьте JQuery на страницу и потратьте некоторое время на поиск правильного объекта DOM и добавление к нему события onclick.
- Создайте веб-ресурс, который выглядит как нужный элемент управления (вы даже можете добавить некоторые события JS, чтобы связать его со скрытым полем в форме), и добавить событие On Click к этому через стандартный JS/HTML.
Этого можно добиться, используя parent.document.getelementbyid: http://www.toplinestrategies.com/blogs/crm/crm-2016-gotcha-fix-unsupported-javascript