I had this working yesterday. I'm not sure what changed. Clicking the edit button in one of my RadGrid rows throws out:
Sys.WebForms.PageRequestManagerServerErrorException: Object reference not set to an instance of an object.
from javascript. Yesterday, it was bringing up the edit form just fine and letting me make changes. It seems as if all my grid events fire on the client o.k. (Edit, ItemCommand, ItemDataBound, ItemCreated), then this error pops up.
Here's my markup if it helps. I don't see what's going on.
(BTW, using the edit form to create an entity is working just fine. It's only when I hit the edit link on an existing row).
Thanks,
Scott
Sys.WebForms.PageRequestManagerServerErrorException: Object reference not set to an instance of an object.
from javascript. Yesterday, it was bringing up the edit form just fine and letting me make changes. It seems as if all my grid events fire on the client o.k. (Edit, ItemCommand, ItemDataBound, ItemCreated), then this error pops up.
Here's my markup if it helps. I don't see what's going on.
(BTW, using the edit form to create an entity is working just fine. It's only when I hit the edit link on an existing row).
Thanks,
Scott
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MediaList.ascx.cs" Inherits="PledgeWeb.MediaLibrary.Controls.MediaList" %><telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> var mediaList = {}; mediaList.get_AddDocumentModalUrl = function mediaList_getAddDocumentModalUrl() { return '<%= Page.ResolveClientUrl("~/MediaLibrary/Modals/AddDocument.aspx") %>'; } mediaList.get_ViewDocumentModalUrl = function mediaList_getViewDocumentModalUrl(docId) { var url = '<%= Page.ResolveClientUrl("~/MediaLibrary/Modals/ViewDocument.aspx") %>' + '?id=' + docId; return url; } //On insert and update buttons click temporarily disables ajax to perform upload actions //for a more detailed description of why we need this. function conditionalPostback(sender, eventArgs) { var theRegexp = new RegExp("\.UpdateButton$|\.PerformInsertButton$", "ig"); if (eventArgs.get_eventTarget().match(theRegexp)) { var upload = $find(window['UploadId']); //AJAX is disabled only if file is selected for upload (i.e., new documents) if (upload != null && upload.getFileInputs()[0].value != "") { eventArgs.set_enableAjax(false); } } } function validateRadUpload(source, e) { e.IsValid = false; var upload = $find(source.parentNode.getElementsByTagName('div')[0].id); var inputs = upload.getFileInputs(); for (var i = 0; i < inputs.length; i++) { //check for empty string or invalid extension if (inputs[i].value != "" && upload.isExtensionValid(inputs[i].value)) { e.IsValid = true; break; } } } </script></telerik:RadCodeBlock><telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> <script type="text/javascript"> mediaList.onAddDocumentWindowClosed = function mediaList.onAddDocumentWindowClosed(sender, eventArgs) { var returnValue = eventArgs.get_argument(); if (!Utils.WasRadWindowCancelled(returnValue, true)) { __doPostBack('', ''); } } mediaList.openAddDocumentWindow = function mediaList_openAddDocumentWindow() { Utils.OpenRadWindow ( mediaList.get_AddDocumentModalUrl(), 600, 400, mediaList.onAddDocumentWindowClosed ); } mediaList.openViewWindow = function mediaList_openViewWindow(docId) { Utils.OpenRadWindow ( mediaList.get_ViewDocumentModalUrl(docId), 600, 400 ); } </script></telerik:RadScriptBlock><telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" ClientEvents-OnRequestStart="conditionalPostback"> <asp:Panel ID="pnlMsg" runat="server"> <asp:Label ID="lblMsg" runat="server" Style="color: Red; font-weight: bold;" /> </asp:Panel> <telerik:RadGrid ID="grdMediaLibrary" runat="server" Skin="Default" AutoGenerateColumns="false" Width="100%" AllowPaging="true" PageSize="10" OnItemDataBound="grdMediaLibrary_ItemDataBound" AllowAutomaticInserts="false" AllowAutomaticUpdates="false" OnEditCommand="grdMediaLibrary_Edit" OnUpdateCommand="grdMediaLibrary_Update" OnInsertCommand="grdMediaLibrary_Insert" OnItemCommand="grdMediaLibrary_ItemCommand" OnItemCreated="grdMediaLibrary_ItemCreated" ShowStatusBar="true"> <PagerStyle Mode="NumericPages" AlwaysVisible="false" Position="Bottom" CssClass="Pager" /> <MasterTableView CommandItemDisplay="Top" ClientDataKeyNames="ID" DataKeyNames="ID"> <NoRecordsTemplate> <asp:Label Text="No documents to display" runat="server" /></NoRecordsTemplate> <Columns> <telerik:GridEditCommandColumn ButtonType="ImageButton"> </telerik:GridEditCommandColumn> <telerik:GridTemplateColumn UniqueName="MenuColumn"> <ItemTemplate> <telerik:RadMenu ID="itemMenu" runat="server" CausesValidation="false"> <Items> <telerik:RadMenuItem Value="topMenuItem" ImageUrl="~/Images/collapsed_toggleExpandHover.gif" HoveredImageUrl="~/Images/collapsed_toggleExpandActive.gif" CssClass="SM_imageButton"> <Items> <telerik:RadMenuItem Text="Archive" ImageUrl="~/Images/archive.jpg" /> <telerik:RadMenuItem Text="Recover From Archive" ImageUrl="~/Images/undo.png" /> </Items> </telerik:RadMenuItem> </Items> </telerik:RadMenu> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="ID" Visible="false" ReadOnly="true" UniqueName="DocID" /> <telerik:GridTemplateColumn HeaderText="Document Name" UniqueName="DocName" ReadOnly="false"> <ItemTemplate> <asp:Label ID="lblDocName" runat="server" Text='<%#Eval("Name") %>' /> </ItemTemplate> <EditItemTemplate> <telerik:RadUpload ID="ruDocument" runat="server" MaxFileInputsCount="1" /> <asp:CustomValidator ID="cvDocument" runat="server" ClientValidationFunction="validateRadUpload" ErrorMessage="Please select a file" Display="Dynamic" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Description" UniqueName="Description"> <ItemTemplate> <asp:Label ID="lblDescription" runat="server" Text='<%# Eval("Description") %>' /> </ItemTemplate> <EditItemTemplate> <telerik:RadTextBox ID="txtDescription" runat="server" Text='<%# Bind("Description") %>' Columns="50" Rows="5" TextMode="MultiLine" /> <des:RequiredTextValidator ID="rtvDescription" runat="server" ControlIDToEvaluate="txtDescription" ErrorMessage="* Required" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn HeaderText="Date Created" DataField="CreatedDate" ReadOnly="true" DataFormatString="{0:d}" /> <telerik:GridBoundColumn HeaderText="Operator" DataField="CreatedBy" ReadOnly="true" /> <telerik:GridImageColumn ImageUrl="~/Images/Tick.gif" HeaderText="Archived?" UniqueName="ArchivedColumn" /> <telerik:GridTemplateColumn ReadOnly="true" UniqueName="ViewColumn"> <ItemTemplate> <asp:HyperLink ID="hypView" runat="server" Text="View" /> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> <EditFormSettings> <EditColumn ButtonType="PushButton" /> </EditFormSettings> </MasterTableView> </telerik:RadGrid></telerik:RadAjaxPanel><telerik:RadAjaxLoadingPanel ID="loadingPanel" runat="server" Skin="Default" /><telerik:RadAjaxManagerProxy ID="ajaxProxy" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadAjaxPanel1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="grdMediaLibrary" LoadingPanelID="loadingPanel" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManagerProxy>