I am currently trying to make a popup editor work clientside with a backend WS, my problem is that when i add repaint the grid to show up the new items, the ids do not match up.
So i thought that i could set the ids on the rowcreated client event like so..
Code
...
<ItemTemplate>
<asp:label ID="ltrl_edit" runat="server"></asp:label>
</ItemTemplate>
....
function RowCreated(sender, eventArgs) {
var cid = eventArgs.get_gridDataItem().getDataKeyValue("contactID");
var imgstr = "<img src='../smtImages/ico_Editsm.png' style='cursor:pointer' class='hightlighttracklist' onclick='initialiseEdit(" + cid + ")' />"
var item = eventArgs.get_gridDataItem();
var button1 = $telerik.findElement(item.get_element(), "ltrl_edit");
$(button1).html(imgstr);
}
function updateGrid(result) {
var tableView = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
tableView.set_dataSource(result);
tableView.dataBind();
var grid = $find("<%= RadGrid1.ClientID %>");
grid.repaint();
}
Any workarounds to this would be a gratefully recieved.
Thanks
Dave
So i thought that i could set the ids on the rowcreated client event like so..
Code
...
<ItemTemplate>
<asp:label ID="ltrl_edit" runat="server"></asp:label>
</ItemTemplate>
....
function RowCreated(sender, eventArgs) {
var cid = eventArgs.get_gridDataItem().getDataKeyValue("contactID");
var imgstr = "<img src='../smtImages/ico_Editsm.png' style='cursor:pointer' class='hightlighttracklist' onclick='initialiseEdit(" + cid + ")' />"
var item = eventArgs.get_gridDataItem();
var button1 = $telerik.findElement(item.get_element(), "ltrl_edit");
$(button1).html(imgstr);
}
- My problem is that when I add an item and call the repaint method (with the new data), the RowCreated event is not fired
function updateGrid(result) {
var tableView = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
tableView.set_dataSource(result);
tableView.dataBind();
var grid = $find("<%= RadGrid1.ClientID %>");
grid.repaint();
}
Any workarounds to this would be a gratefully recieved.
Thanks
Dave