I am trying to do client side databind to a webservice. I have created a simple test service and a test page that is almost identical to the ones used in the demos. I have updated my telerik controls and jquery. I am getting an error with the set_dataSource() function off of the grid. When debugging the js I get a null value for "tableView'. Here is the code I am using.
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head id="Head1" runat="server">
<telerik:radcodeblock id="RadCodeBlock1" runat="server">
<script src="../scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function pageLoad(sender, args) {
getData();
}
function getData() {
TestDataService.TestDataRows(updateGrid);
}
function updateGrid(result) {
var tableView = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
tableView.set_dataSource(result);
tableView.dataBind();
}
function OnRowDataBound(sender, args) {
var spanControl = args.get_item().get_cell("Change").getElementsByTagName('span')[0];
var image = args.get_item().get_cell("Change").getElementsByTagName('img')[0];
if (args.get_dataItem().Change > 0) {
image.style.display =
"";
image.src =
"Images/up.gif";
spanControl.style.color =
"green";
}
else if (args.get_dataItem().Change < 0) {
image.style.display =
"";
image.src =
"Images/down.gif";
spanControl.style.color =
"red";
}
else {
image.style.display =
"none";
spanControl.style.color =
"";
}
}
//]]>
</script>
</telerik:radcodeblock>
</
head>
<
body class="BODY">
<form runat="server" id="mainForm" method="post">
<telerik:radscriptmanager id="RadScriptManager" runat="server">
<Services>
<asp:ServiceReference Path="~/WebServices/TestDataService.asmx" />
</Services>
</telerik:radscriptmanager>
<!-- content start -->
<h3 class="qsfSubtitle">
RadGrid bound to live data:
</h3>
<telerik:radgrid id="RadGrid1" autogeneratecolumns="false" runat="server">
<MasterTableView TableLayout="Fixed">
<Columns>
<telerik:GridBoundColumn DataField="OID" UniqueName="OID" HeaderText="OID">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:radgrid>
<!-- content end -->
</form>
</
body>
</
html>