Hi,
Yes, I've found several threads similar to this, but any solutions provided don't seem to work for me.
I have a RadWindow (separate aspx page) which contains a RadTabStrip / RadMultiPage / RadPageView structure.
The grid (on one of the pageviews) is populated properly upon page load.
I update a particular row in the grid using a web service, and now want to rebind the grid so that those changes are reflected.
I perform an identical operation in a RadWindow with no tabs, and everything works fine.
So it looks like I need to access the grid differently when it is contained within a RadPageView.
Here's what I've tried without success:
The multiPage , pageView and domElement are all fine.
I fail on the grid assignment with the following error:
Object doesn't support property or method 'get_element'
I'm sure I'm doing something stupid.
Can you tell me what that is?
Thanks in advance.
Jim
Yes, I've found several threads similar to this, but any solutions provided don't seem to work for me.
I have a RadWindow (separate aspx page) which contains a RadTabStrip / RadMultiPage / RadPageView structure.
The grid (on one of the pageviews) is populated properly upon page load.
I update a particular row in the grid using a web service, and now want to rebind the grid so that those changes are reflected.
I perform an identical operation in a RadWindow with no tabs, and everything works fine.
So it looks like I need to access the grid differently when it is contained within a RadPageView.
Here's what I've tried without success:
function RefreshDataSpecsGrid() { var multiPage = $find("<%= RadMultiPageDataSpecs.ClientID %>"); var pageView = multiPage.findPageViewByID('pagDataSpecsDetails'); var domElement = pageView.get_element(); var grid = domElement.get_element('grdDataSpecs'); var masterTable = grid.get_masterTableView(); masterTable.rebind(); }The multiPage , pageView and domElement are all fine.
I fail on the grid assignment with the following error:
Object doesn't support property or method 'get_element'
I'm sure I'm doing something stupid.
Can you tell me what that is?
Thanks in advance.
Jim
8 Answers, 1 is accepted
0
Jayesh Goyani
Top achievements
Rank 2
answered on 03 Apr 2014, 05:08 AM
Hello,
Please use Telerik Static Client Library to find Radgrid from your Pageview.
Like : $Telerik.FindControl(pageview,"Your RadGrid ID/Clinet ID");
By using above code you can get Radgrid Control from Pageview. May be by using Element you can get get only DIV not the Radgrid Control.
Please check below link for reference.
http://stackoverflow.com/questions/12584150/keypress-event-for-radnumeric-textbox-in-radgrid-for-exchanging-coloumn-values
http://jayeshgoyani.blogspot.in/2012/05/how-to-access-control-from-itemtemplate.html
Thanks,
Jayesh Goyani
Please use Telerik Static Client Library to find Radgrid from your Pageview.
Like : $Telerik.FindControl(pageview,"Your RadGrid ID/Clinet ID");
By using above code you can get Radgrid Control from Pageview. May be by using Element you can get get only DIV not the Radgrid Control.
Please check below link for reference.
http://stackoverflow.com/questions/12584150/keypress-event-for-radnumeric-textbox-in-radgrid-for-exchanging-coloumn-values
http://jayeshgoyani.blogspot.in/2012/05/how-to-access-control-from-itemtemplate.html
Thanks,
Jayesh Goyani
0
jlj30
Top achievements
Rank 2
answered on 03 Apr 2014, 01:59 PM
Hi,
I tried what you suggested. My code now looks like:
Once again, multipage and pageview are valid objects, but I now get the following error when I run this:
Unhandled exception at line 334, column 29 in http://vs2013-jim/NavviaNewDev/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=;;System.Web.Extensions,+Version=4.0.0.0,+Culture=neutral,+PublicKeyToken=31bf3856ad364e35:en-US:d618f02c-bda7-40f1-bb64-308e08f719c3:ea597d4b:b25378d2;Telerik.Web.UI,+Version=2014.1.225.45,+Culture=neutral,+PublicKeyToken=121fae78165ba3d4:en-US:ed076519-5e60-4916-a089-ba7a0f56b711:16e4e7cd:ed16cbdc:f7645509:24ee1bba:1e771326:88144a7a:a7e79140:e330518b:8e6f0d33:6a6d718d:b7778d6c:f46195d3:2003d0b8:aa288e2d:258f1c72:19620875:874f8ea2:cda80b3:7165f74:58366029:cb4a7569:30f1f089:92fe8ea0:fa31b949:490a9d4e
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'getElementsByTagName'
I am running 2014.1.225.45
Any suggestions for what I should try next?
Thanks in advance.
Jim
I tried what you suggested. My code now looks like:
function RefreshDataSpecsGrid() { var multiPage = $find("<%= RadMultiPageDataSpecs.ClientID %>"); var pageView = multiPage.findPageViewByID('pagDataSpecsDetails'); var grid = $telerik.findControl(pageView, 'grdDataSpecs'); // Telerik suggestion var masterTable = grid.get_masterTableView(); masterTable.rebind(); }Once again, multipage and pageview are valid objects, but I now get the following error when I run this:
Unhandled exception at line 334, column 29 in http://vs2013-jim/NavviaNewDev/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=;;System.Web.Extensions,+Version=4.0.0.0,+Culture=neutral,+PublicKeyToken=31bf3856ad364e35:en-US:d618f02c-bda7-40f1-bb64-308e08f719c3:ea597d4b:b25378d2;Telerik.Web.UI,+Version=2014.1.225.45,+Culture=neutral,+PublicKeyToken=121fae78165ba3d4:en-US:ed076519-5e60-4916-a089-ba7a0f56b711:16e4e7cd:ed16cbdc:f7645509:24ee1bba:1e771326:88144a7a:a7e79140:e330518b:8e6f0d33:6a6d718d:b7778d6c:f46195d3:2003d0b8:aa288e2d:258f1c72:19620875:874f8ea2:cda80b3:7165f74:58366029:cb4a7569:30f1f089:92fe8ea0:fa31b949:490a9d4e
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'getElementsByTagName'
I am running 2014.1.225.45
Any suggestions for what I should try next?
Thanks in advance.
Jim
0
Jayesh Goyani
Top achievements
Rank 2
answered on 07 Apr 2014, 04:34 AM
Hello Jim,
Once you resolved below issue, then we will work on this issue. Because this issue depened in your below issue.
http://www.telerik.com/forums/radgrid-disappears-after-client-side-rebind
Thanks,
Jayesh Goyani
Once you resolved below issue, then we will work on this issue. Because this issue depened in your below issue.
http://www.telerik.com/forums/radgrid-disappears-after-client-side-rebind
Thanks,
Jayesh Goyani
0
jlj30
Top achievements
Rank 2
answered on 07 Apr 2014, 02:29 PM
Hello Jayesh,
Well, as you may have seen from my update, that other issue is now resolved, so we can focus on this one.
I reverted back to this simple function, which happens to resemble the example in your documentation (rebind):
The grid resolves to a valid object, but I get null for the masterTable.
What would you suggest I try next?
Jim
Well, as you may have seen from my update, that other issue is now resolved, so we can focus on this one.
I reverted back to this simple function, which happens to resemble the example in your documentation (rebind):
function RefreshDataSpecsGrid() { var grid = $find("<%= grdDataSpecs.ClientID %>"); var masterTable = grid.get_masterTableView(); masterTable.rebind(); }The grid resolves to a valid object, but I get null for the masterTable.
What would you suggest I try next?
Jim
0
Jayesh Goyani
Top achievements
Rank 2
answered on 08 Apr 2014, 05:38 AM
Hello Jim,
As per my understanding you can get the 'grdDataSpecs' in your javascript variable. But you are not able to get the mastertableview from the grid.
As per experinance with Radgrid Control, This issue is raised because Radgrid is NOT binded with any records/Data. To resolve this issue first time you have to bind the data to the radgrid from backend/C# side. (Ex:(As per your code) When the page load at that time you have to bind the data in to your grid from backend side, then you can able to access the mastertablevoew in the Javascript side).
Please check the below link/post, in this code i have bind dummy data from backend side to access the mastertableview in the clientside.
Next time on words i will bind the data from the clientside.
http://www.telerik.com/forums/bind-radgrid-client-side-to-a-json-array#cMklKoEpR0uSwa_e-MWVzA
Note : Please check below link. It will also help you to achieve same functionality by using another way.
http://demos.telerik.com/aspnet-ajax/ajax/examples/manager/clientsideapi/defaultcs.aspx
Let me know if any concern.
Thanks,
Jayesh Goyani
As per my understanding you can get the 'grdDataSpecs' in your javascript variable. But you are not able to get the mastertableview from the grid.
As per experinance with Radgrid Control, This issue is raised because Radgrid is NOT binded with any records/Data. To resolve this issue first time you have to bind the data to the radgrid from backend/C# side. (Ex:(As per your code) When the page load at that time you have to bind the data in to your grid from backend side, then you can able to access the mastertablevoew in the Javascript side).
Please check the below link/post, in this code i have bind dummy data from backend side to access the mastertableview in the clientside.
Next time on words i will bind the data from the clientside.
http://www.telerik.com/forums/bind-radgrid-client-side-to-a-json-array#cMklKoEpR0uSwa_e-MWVzA
Note : Please check below link. It will also help you to achieve same functionality by using another way.
http://demos.telerik.com/aspnet-ajax/ajax/examples/manager/clientsideapi/defaultcs.aspx
Let me know if any concern.
Thanks,
Jayesh Goyani
0
jlj30
Top achievements
Rank 2
answered on 08 Apr 2014, 01:26 PM
Hi,
My grid HAS been bound! I can see the records on the screen.
I am using the following SqlDataSource to populate the grid:
The RadTextBox (txtTaskID) identified in the ControlParameter is populated in the Page_Load event in code behind.
I have several other similar RadWindows that are working just fine, except their grids ARE NOT within a pageView.
This seems to be the only difference.
Here's the declaration of my radGrid:
Where to next?
Jim
My grid HAS been bound! I can see the records on the screen.
I am using the following SqlDataSource to populate the grid:
<asp:SqlDataSource ID="sqlDataSpec" runat="server" ConnectionString="<%$ ConnectionStrings:eProcessDatabase %>" OnSelected="sqlDataSpec_Selected" SelectCommand="SELECT Data_Specification.ID, Data_Specification.Task_ID, Data_Specification.Description, Data_Specification.Validation_Rule, Data_Specification.Validation_Rule, Data_Specification.Description, Data_Specification.Common_Flag, Data_Specification.Field_Name, Data_Specification.Field_Name, Data_Specification.SourceID, Data_Specification.FormatID, Data_Specification.SupportedMetricID, Data_Specification.ListOrder, Data_Specification.ToolTip, Data_Specification.Legacy_Field_Name, Data_Specification.Read_Only, Data_Specification.Read_Only_Condition, Data_Specification.Visible, Data_Specification.Mandatory_Field, Data_Specification.Visible_Condition, Data_Specification.Mandatory_Condition, Data_Specification.Audit, Data_Specification.Implementation_Technique, Data_Specification.Implementation_Technique, Data_Specification.Feature_TypeID, (Select Count(*) From P_DataSpecValues Where DataSpecID = Data_Specification.ID) As valueCount, Lookup_Format.Format FROM Data_Specification LEFT OUTER JOIN Lookup_Format ON Data_Specification.FormatID = Lookup_Format.FormatID WHERE (Data_Specification.Task_ID = @Task_ID) ORDER BY Data_Specification.ListOrder"> <SelectParameters> <asp:ControlParameter Name="Task_ID" ControlID="txtTaskID" Type="String" PropertyName="Text" /> </SelectParameters></asp:SqlDataSource>The RadTextBox (txtTaskID) identified in the ControlParameter is populated in the Page_Load event in code behind.
I have several other similar RadWindows that are working just fine, except their grids ARE NOT within a pageView.
This seems to be the only difference.
Here's the declaration of my radGrid:
<telerik:RadAjaxPanel ID="RadAjaxPanel2" runat="server"> <telerik:RadGrid ClientSettings-Resizing-AllowColumnResize="true" PageSize="20" ID="grdDataSpecs" ClientIDMode="Static" Width="100%" ShowStatusBar="false" DataSourceID="sqlDataSpec" runat="server" AutoGenerateColumns="False" AllowSorting="True" AllowPaging="false" GridLines="None" Skin="Vista" ClientSettings-Selecting-AllowRowSelect="True" ClientSettings-ClientEvents-OnRowSelected="RowSelected" AllowMultiRowSelection="False" ClientSettings-Scrolling-AllowScroll="true" ClientSettings-Scrolling-ScrollHeight="95px" ClientSettings-Scrolling-UseStaticHeaders="true"> <MasterTableView DataSourceID="sqlDataSpec" DataKeyNames="ID" AllowMultiColumnSorting="True" CommandItemDisplay="Top" NoMasterRecordsText="No records"> <CommandItemTemplate> <div style="float: left;"> </div> <div style="float: right; text-align: right;"> <asp:Label ID="lblRecordCountDataSpecs" runat="server" Text="" OnPreRender="lblRecordCountDataSpecs_PreRender"></asp:Label> </div> </CommandItemTemplate> <Columns> <telerik:GridBoundColumn DataField="ID" UniqueName="DataSpecID" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="FormatID" UniqueName="FormatID" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="SourceID" UniqueName="SourceID" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="SupportedMetricID" UniqueName="SupportedMetricID" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Description" UniqueName="Description" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Field_Name" UniqueName="Field_Name" Display="false"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Feature_TypeID" UniqueName="Feature_TypeID" Display="false"></telerik:GridBoundColumn> <telerik:GridTemplateColumn AllowFiltering="false" HeaderText="Name" UniqueName="Field_Name_Column" DataField="Field_Name"> <ItemTemplate> <asp:Label ID="lblField_Name" runat="server" Text='<%# Bind("Field_Name")%>'></asp:Label> <telerik:RadToolTip ID="tipDesc" runat="server" AutoCloseDelay="20000" Height="50" HideEvent="Default" OffsetX="6" Position="BottomRight" TargetControlID="lblField_Name" Text='<%# DataBinder.Eval(Container.DataItem, "Description") %>' Width="300"> </telerik:RadToolTip> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn SortExpression="Format" HeaderText="Format" HeaderButtonType="TextButton" DataField="Format" UniqueName="Format"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="valueCount" HeaderText="# Values" HeaderButtonType="TextButton" DataField="valueCount" UniqueName="valueCount"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Default_Value" HeaderText="Default Value" Display="False" HeaderButtonType="TextButton" DataField="Default_Value" UniqueName="Default_Value" AllowFiltering="true"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Source" HeaderText="Source" HeaderButtonType="TextButton" Display="False" DataField="Source" UniqueName="Source"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Legacy_Field_Name" HeaderText="Legacy Field" Display="False" HeaderButtonType="TextButton" DataField="Legacy_Field_Name" UniqueName="Legacy_Field_Name"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="MetricName" HeaderText="Metric" HeaderButtonType="TextButton" Display="False" DataField="MetricName" UniqueName="MetricName"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Read_Only" HeaderText="Read-Only" HeaderButtonType="TextButton" Display="False" DataField="Read_Only" UniqueName="Read_Only"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Read_Only_Condition" HeaderText="Read-Only Condition" Display="False" HeaderButtonType="TextButton" DataField="Read_Only_Condition" UniqueName="Read_Only_Condition"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Visible" HeaderText="Visible" HeaderButtonType="TextButton" Display="False" DataField="Visible" UniqueName="Visible"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Visible_Condition" HeaderText="Visible Condition" Display="False" HeaderButtonType="TextButton" DataField="Visible_Condition" UniqueName="Visible_Condition"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Mandatory_Field" HeaderText="Mandatory" Display="False" HeaderButtonType="TextButton" DataField="Mandatory_Field" UniqueName="Mandatory_Field"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Mandatory_Condition" HeaderText="Mandatory Condition" Display="False" HeaderButtonType="TextButton" DataField="Mandatory_Condition" UniqueName="Mandatory_Condition"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Common_Flag" UniqueName="Common_Flag" Display="false"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Audit" UniqueName="Audit" Display="false"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="ToolTip" HeaderText="ToolTip" Display="False" HeaderButtonType="TextButton" DataField="ToolTip" UniqueName="ToolTip"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Validation_Rule" HeaderText="Special Instructions" Display="False" HeaderButtonType="TextButton" DataField="Validation_Rule" UniqueName="Validation_Rule"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Feature_Type" HeaderText="Feature Type" Display="False" HeaderButtonType="TextButton" DataField="Feature_Type" UniqueName="Feature_Type" AllowFiltering="true"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Implementation_Technique" HeaderText="Implementation Technique" Display="False" HeaderButtonType="TextButton" DataField="Implementation_Technique" UniqueName="Implementation_Technique" AllowFiltering="true"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="ListOrder" HeaderText="List Order" HeaderButtonType="TextButton" DataField="ListOrder" UniqueName="ListOrder" Visible="false"> </telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> </telerik:RadAjaxPanel>Where to next?
Jim
0
Jayesh Goyani
Top achievements
Rank 2
answered on 08 Apr 2014, 06:23 PM
Hello,
Please check the default2.aspx in below demo.
http://jmp.sh/bzxvI4T
If you need some changes then please do on that page and give it me back, so i will try to resolved actual issue.
Thanks,
Jayesh Goyani
Please check the default2.aspx in below demo.
http://jmp.sh/bzxvI4T
If you need some changes then please do on that page and give it me back, so i will try to resolved actual issue.
Thanks,
Jayesh Goyani
0
jlj30
Top achievements
Rank 2
answered on 30 Apr 2014, 12:38 AM
Hi,
I've been working on something else for the last few weeks and just got back into this.
The default2.aspx in the demo you provided does NOT have any RadPageView's!!!
Here's a summary of my problem.
I have 2 grids.
The 1st one is placed on the 1st RadPageView and I can rebind it just fine. This grid is bound to a SqlDataSource during page load. It displays lots of data. No problem here.
If I select a row from this grid, I want to populate the 2nd grid located on the 2nd RadPageView. It too is bound to a SqlDataSource, but initially there is no data.
Here are the 2 scripts; one for each grid.
The 1st one works; the second does not.
The 1st RadPageView containing the 1st grid is visible at the time these scripts fire.
Any thoughts on where to go with this?
Thanks.
Jim
I've been working on something else for the last few weeks and just got back into this.
The default2.aspx in the demo you provided does NOT have any RadPageView's!!!
Here's a summary of my problem.
I have 2 grids.
The 1st one is placed on the 1st RadPageView and I can rebind it just fine. This grid is bound to a SqlDataSource during page load. It displays lots of data. No problem here.
If I select a row from this grid, I want to populate the 2nd grid located on the 2nd RadPageView. It too is bound to a SqlDataSource, but initially there is no data.
Here are the 2 scripts; one for each grid.
The 1st one works; the second does not.
The 1st RadPageView containing the 1st grid is visible at the time these scripts fire.
function RefreshDataSpecsGrid() { var grid = $find("<%= grdDataSpecs.ClientID %>"); // This grid is located within the first pageView var masterTable = grid.get_masterTableView(); // Yields a valid object masterTable.rebind(); } function RefreshDataSpecValuesGrid() { var grid = $find("<%= grdDataSpecValues.ClientID %>"); // This grid is located within the 2nd pageView var masterTable = grid.get_masterTableView(); // Yields null !!!!! masterTable.rebind(); }Any thoughts on where to go with this?
Thanks.
Jim