After further investigation of why partial postbacks dont seem to be working correclty when triggered from client side javascript via the GetPostBackEventReference method, I came across something odd. The following is an extract from the HTML source sent to the browser, which was viewed using the 'View Source' menu option from IE.
<script src="/AJAXEnabledWebSite1/WebResource.axd?d=TAVuoWlkDMzV1agoPnjngv9u4lQxxNikBnrocAk0qeJY7EYN7G_mjWfRqrqHVTlWi4nenjrMkinvVXxclOqlz-_j2gMQQJg610DBrUMjva98q4Ku-porHH6HTQzyBd3m_-Wn6DsrUCTLrHLV9ZrDBmBEf_xRBrWTNf70tGvVhTA1&t=632974563067178443" type="text/javascript"></script>
<script type="text/javascript">
Sys.WebForms.PageRequestManager._initialize('ScriptManager1', document.getElementById('form1'));
Sys.WebForms.PageRequestManager.getInstance()._updateControls(['txpanel','txpagepanel','txrootpanel'], [], [], 90);
</script>
<a onclick="javascript:__doPostBack('__Page','Erb.Web.Layout.Layout')">Base</a><a onclick="javascript:__doPostBack('__Page','Erb.Web.Layout.RootLayout')">Root</a><a onclick="javascript:__doPostBack('__Page','Erb.Web.Layout.MainLayout')">Main</a><a onclick="javascript:__doPostBack('__Page','Erb.Web.Layout.ProductLayout')">Prod</a><div id="xpanel">
<div id="panel">
</div>
</div><div id="xpagepanel">
<div id="pagepanel">
<div id="xrootpanel">
<div id="rootpanel">
<a onclick="javascript:__doPostBack('__Page','url=Erb.Web.PageContentMainTest')">Main<br></a>
</div>
</div>
</div>
</div></form>
Now why does the line :-
Sys.WebForms.PageRequestManager.getInstance()._updateControls(['txpanel','txpagepanel','txrootpanel'], [], [], 90);
indicate control IDs of ['txpanel','txpagepanel','txrootpanel'] when the actual IDs are xpanel, xpagepanel and xrootpanel ( which are all update panels )
Wouldn't that cause a problem when a partial postback was being executed, because the PageRequestManager on the client would not be able to match the IDs correctly ?
Just a thought.
Thanks.