I have an evaluation version of the RadControls for ASP.NET AJAX v 2008.1.515.20
I have a simple page with a button that does a postback, and toggles a RadDock's Closed property.
The button is registered in the AjaxManager, and the updated controls is set to the RadDock itself.
After clicking the button several times to show / hide the RadDock, I get the following error:
Invalid JSON primitive:
Any help?
Here is the ASPX Markup:
<%
@ Page Language="C#" AutoEventWireup="true" Theme="Oracle" Codebehind="PopupTest.aspx.cs"
Inherits="PasWbApp.UserControls.PopupTest" %>
<%
@ Register Src="../UserControls/AsActivityPopup.ascx" TagName="AsActivityPopup"
TagPrefix="adminServerPas" %>
<%
@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head id="Head1" runat="server">
<title>Untitled Page</title>
</
head>
<
body style="background-color: #ffffff">
<form id="form1" runat="server">
<telerik:RadScriptManager ID="MasterScriptManager" runat="server">
<Scripts>
<asp:ScriptReference name="" Assembly="" Path="~/Lib/Java/ScrollToAnchor.js" />
</Scripts>
</telerik:RadScriptManager>
<telerik:RadAjaxManager ID="MasterAjaxManager" runat="server" EnableAJAX="true" DefaultLoadingPanelID="MasterAjaxLoadingPanel"
ClientEvents-OnRequestStart="centerUpdatePanel();" RequestQueueSize="5">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="PopupToggleButton">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="PopupWindow" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
<telerik:RadStyleSheetManager ID="MasterStyleSheetManager" runat="server">
</telerik:RadStyleSheetManager>
<telerik:RadAjaxLoadingPanel ID="MasterAjaxLoadingPanel" runat="server" Height="100%"
Width="100%" IsSticky="true" BackColor="White">
<img id="MasterAjaxLoadingPanelImage" alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>'
style="border: 0px;" />
<div id="MasterAjaxLoadingPanelBackground">
</div>
</telerik:RadAjaxLoadingPanel>
<telerik:RadScriptBlock runat="server" ID="CenterLoadingPanelScriptBlock">
<script language="javascript" type="text/javascript">
function centerUpdatePanel()
{
centerElementOnScreen(document.getElementById(
'MasterAjaxLoadingPanelBackground'));
}
function centerElementOnScreen(element)
{
var scrollTop = document.body.scrollTop;
var scrollLeft = document.body.scrollLeft;
var viewPortHeight = document.body.clientHeight;
var viewPortWidth = document.body.clientWidth;
if (document.compatMode == "CSS1Compat")
{
viewPortHeight = document.documentElement.clientHeight;
viewPortWidth = document.documentElement.clientWidth;
scrollTop = document.documentElement.scrollTop;
scrollLeft = document.documentElement.scrollLeft;
}
var topOffset = Math.ceil(viewPortHeight/2 - element.offsetHeight/2);
var leftOffset = Math.ceil(viewPortWidth/2 - element.offsetWidth/2);
var top = scrollTop + topOffset - 40;
var left = scrollLeft + leftOffset - 70;
element.style.position =
"fixed";
element.style.zIndex = 30000;
// set the opacity...
element.style.opacity = .7;
element.style.filter =
'alpha(opacity=70)';
//element.style.top = top + "px";
//element.style.left = left + "px";
element.style.top = 0;
element.style.left = 0;
element.style.width = viewPortWidth;
element.style.height = viewPortHeight;
var imgElement = document.getElementById('MasterAjaxLoadingPanelImage');
imgElement.style.position =
"fixed";
imgElement.style.top = top +
"px";
imgElement.style.left = left +
"px";
imgElement.style.opacity = 1;
imgElement.style.filter =
'alpha(opacity=100)';
imgElement.style.zIndex = 40000;
}
</script>
</telerik:RadScriptBlock>
<div>
<asp:Button runat="server" ID="PopupToggleButton" Text="Toggle Popup" />
<br />
<telerik:RadDockLayout runat="server" ID="DockLayout">
<telerik:RadDock runat="server" ID="PopupWindow" DockMode="Floating" Pinned="false"
Closed="true" Collapsed="false" Height="520" Width="780">
<ContentTemplate>
Hello There!
</ContentTemplate>
</telerik:RadDock>
</telerik:RadDockLayout>
</div>
</form>
</
body>
</
html>
AND THE CODE BEHIND...
protected void Page_Load( object sender, EventArgs e ) {
this.PopupToggleButton.Click += new EventHandler( PopupToggleButton_Click );
}
protected void PopupToggleButton_Click( object sender, EventArgs e ) {
if( PopupWindow.Closed ) {
PopupWindow.Closed =
false;
}
else {
PopupWindow.Closed =
true;
}
}