Hi,
I am using RADGrid for my application to improve the performance. I am updating the List<Class1> in Webeservice and returning to the client fuinction , But in client script while executing the following line of code in the "function updateGrid(result)" -
set_dataSource(result)
; throwing error inside Telerik dynamic created script file as 'null object'.
In JavaScript
| <script type="text/javascript"> |
| function bind() |
| { |
| xtenzasolutions.WebService2.HelloWorld(updateGrid,OnError); |
| } |
| function OnError(result) |
| { |
| alert("Error : "+result.get_message()); |
| } |
| function updateGrid(result) |
| { |
| var tableview= $get('<% = rgDetails.MasterTableView.ClientID %>'); |
| tableview.set_dataSource(result); |
| tableview.dataBind(); |
| GetFirstDataItemKeyValues(); |
| } |
| function GetFirstDataItemKeyValues() |
| { |
| var firstDataItem = $find("<%=rgDetails.ClientID %>").get_masterTableView().get_dataItems()[0]; |
| var keyValues = |
| 'DisplayStatus: "' + |
| firstDataItem.getDataKeyValue("disp_id") + '"' + |
| ' \r\n' + |
| 'RuleName: "' + |
| firstDataItem.getDataKeyValue("url") + '"'; |
| alert(keyValues); |
| } |
| </script> |
In UserControl Page.
| <table> |
| <tr> |
| <td> |
| <asp:ScriptManager ID="scrp" runat="server"> |
| <Services> |
| <asp:ServiceReference Path="~/WebService2.asmx" /> |
| </Services> |
| </asp:ScriptManager> |
| <telerik:RadGrid ID="rgDetails" runat="server" GridLines="None" Skin="Office2007" |
| EnableClientKeyValues="true" AutoGenerateColumns="False" AllowMultiRowSelection="false" Height="200px" Width="500px"> |
| <HeaderContextMenu EnableTheming="True"> |
| <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
| </HeaderContextMenu> |
| <MasterTableView> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </ExpandCollapseColumn> |
| <Columns> |
| <%--<telerik:GridBoundColumn UniqueName="MessageType" SortExpression="MessageType" HeaderText="" DataField="MessageType"></telerik:GridBoundColumn>--%> |
| <telerik:GridTemplateColumn HeaderText="" UniqueName="Image"> |
| <ItemTemplate> |
| <asp:Image runat="server" ID="ImageThumbnail" AlternateText="image" ImageUrl='' Height="25" |
| Width="25" Style="border-width: 0px;" /> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridBoundColumn ItemStyle-HorizontalAlign="Left" UniqueName="Activity" SortExpression="Activity" |
| HeaderText="Activity" DataField="u_id"> |
| <ItemStyle HorizontalAlign="Left" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridTemplateColumn AllowFiltering="false" UniqueName="Install" HeaderText="Status"> |
| <ItemTemplate> |
| <%#DataBinder.Eval(Container.DataItem, "disp_id")%></a></ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridBoundColumn UniqueName="InstallStatus" SortExpression="InstallStatus" |
| HeaderText="" DataField="url" Visible="false"> |
| </telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <FilterMenu EnableTheming="True"> |
| <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
| </FilterMenu> |
| </telerik:RadGrid> |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <asp:Button runat="server" ID="butt" te="click" OnClientClick="bind()" /> |
| </td> |
| </tr> |
| </table> |
In Webservice
| public List<Class1> HelloWorld() |
| { |
| string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString; |
| SqlConnection con = new SqlConnection(constr); |
| con.Open(); |
| SqlDataAdapter adp = new SqlDataAdapter("select *from urlTable", constr); |
| DataSet ds = new DataSet(); |
| adp.Fill(ds, "tab"); |
| con.Close(); |
| List<Class1> obj = new List<Class1>(); |
| int i = 0; |
| foreach (DataRow rw in ds.Tables[0].Rows) |
| { |
| Class1 ser = new Class1(); |
| ser.UID = rw["u_id"].ToString(); |
| ser.DISPID = rw["disp_id"].ToString(); |
| ser.URL = rw["url"].ToString(); |
| obj.Add(ser); |
| } |
| return obj; |
| } |