Я использую postMessage для связи от iFrame до CRM в течение некоторого времени. Он работал в CRM 2011 и CRM 2015, но он больше не работает в CRM 2016 годаpostMessage from iFrame больше не работает в CRM 2016 на посылке
IFrame Javascript код:
var pass_data = {
'refresh': 'false',
'expand': 'true'
};
window.parent.postMessage(JSON.stringify(pass_data), 'crm url');
CRM JavaScript:
function setListener() {
if (window.XMLHttpRequest) {
//for browsers other than ie
window.addEventListener("message", receivePostMessage, false);
} else {
//ie
window.attachEvent('onmessage',receivePostMessage);
}
}
function receivePostMessage(event) {
//do something with event.data
var pass_data = JSON.parse(event.data);
alert(pass_data);
}
setListener() вызывается на странице и я подтвердил, что он вызывается. Я попытался использовать «*» в качестве целевого источника, и он все еще не работает.
Кто-нибудь знает, может ли это быть жизнеспособным вариантом в CRM 2016?
Я пробовал, что он все еще не работает. Я попытался использовать *, CRM Url и UrlReferrer. – ijason03
Отредактировав мой ответ, вам нужно использовать window.parent даже при подключении событий, я думал, что это объяснительно, мое плохое. – dynamicallyCRM
Спасибо, что сработал !!! – ijason03