/*
Attach a click event to all fields on the CRM 2011 form.
There is a silverlight page on the footer of the form. On click of any field i need to pass the schema name of the source field(which raised the event) to the silverlight page.
Using the Xrm properties we cannot get the control of a control in the footer.
Here I had to pass a dynamic parameter to the querystring of the silverlight web resource and the ‘setData’ method also cannot be used directly.
On load of the form I attached events to all label fields on the form.
For the web resource on the footer there is a property called ‘control’ which gave access to the ‘setData’ method.
Initially I dont want any data parameter to be passed. So in the web resource properties i passed an empty string as data parameter.
This allowed me to change the data parameter dynamically.
*/
function AttachAttributEvents()
{
var attribs = Xrm.Page.data.entity.attributes.get();
var attribName = "";
for (var i in attribs)
{
attribName = attribs[i].getName();
if (attribName != "")
{
document.getElementById(attribName + '_c').onclick = function ()
{ //Attach events to the label of each attribute
var Elt = window.event.srcElement.parentElement.id;
var EltName = Elt.substring(0, Elt.length - 2);
document.getElementById("WebResource_FieldInfo").control.setData(EltName); //Pass Data parameter to the web resource
};
}
}
}
No comments:
Post a Comment